C言語ではerrno.hがお馴染みですがerrno.hがシステム定義に寄りすぎています。errnoも確認して欲しいのですが。純粋なCでないことを認めつつ参考例として、MicrosoftのCOM等で使うHRESULT型(typedefされたlong型)を見ていましょう。http://www.carrona.org/winerror.htmlうーん。32bitに沢山の情報を詰め込んでいますね。いうか詰め込みすぎです。さんが既に回答しているように「一貫性を保つ」ことです。HRESULTを介したエラーコードの定義、判定マクロといったものを作って、誰でも扱えるように作られています。こんな感じのほうが健全なわけです(エラー設計に変更があっても。新定義のresの値がFAILEDマクロで判定結果を返してくれればよいので)。戻り値に二つの意味を持たせるのは、個人的に好きではないですね。標準ライブラリにはそういうのが多いですけど。戻り値は、成功時はポインター。以外の値かどうかを確認する必要がある。いうのが混在していると、ちょっと気持ち悪いですね^^;私の場合は、処理の成否のみを返すように統一しています。|回答スタック・オーバーフローに参加してくれて、ありがとうございます!質問の回答を共有してください。回答を説明し、自分の検討結果も共有してください。意見を述べること(意見を述べるなら、参照リソース、自分の経験で意見をサポートしてください)さらにサポートが必要な場合このヘルプを参考してください。“回答を投稿”をクリックすることで利用規約、プライバシーポリシー、及びクッキーポリシーに同意したものとみなされます。タグが付いた他の質問を参照するか、自分で質問をする。declaredになる。charの文字列を比較したいのです4コンパイル時の引数の型の不整合のチェックについて1C言語の宣言・型の読み方を教えてください。3%sで配列の中身を表示さる時に、配列の先頭要素のアドレスを渡せば'\0'までの文字が表示される認識ですが、そうならない原因にがわからない。2標準ライブラリの関数の引数の定義の読み解き方がわからない。質問のフィードこのRSSフィードを購読するには、このURLをコピーしてRSSリーダーに貼り付けてください。