C では、関数は戻りコードによって操作結果を表します。 一般的な戻りコード: 0 (成功)、1 (エラー)、-1 (ファイル操作エラー)、NULL (ヌル値)、errno (システム エラー コード) カスタム戻り値コード: 特定のニーズを満たすために列挙型またはカスタム型を通じて定義されます。実際のケース: open_and_read_file() 関数は列挙型を使用してファイル操作の結果を表し、switch ステートメントを使用して戻りコードに基づいて対応するアクションを実行します。
C のさまざまなリターン コードの意味
C プログラムでは、通常、関数とメソッドはリターン コードの結果またはステータスを通じて操作を表します。 。これらの戻りコードは、整数、列挙、ブール値、またはその他のカスタム タイプにすることができます。コードのデバッグと保守には、さまざまな戻りコードの意味を理解することが重要です。
一般的な戻りコード
C での一般的な戻りコードの一部を次に示します。
カスタム戻りコード
これらの一般的な戻りコードに加えて、特定のアプリケーションのニーズに合わせて戻りコードをカスタマイズすることもできます。これは、列挙を定義するか、独自のカスタム タイプを作成することで実現できます。
たとえば、次の列挙では、操作によって生成される可能性のあるさまざまな戻りコードを定義します。
enum class CustomResultCode { Success, InvalidArgument, ResourceNotFound, PermissionDenied, InternalError };
実用的なケース
見てみましょう。 1 カスタムリターンコードを使用する実際の例。ファイルを開いてそこから読み取ろうとする関数があるとします。次のコードは、列挙型を使用して操作の結果を表す方法を示しています。
#include <iostream> #include <fstream> using namespace std; enum class FileOperationResultCode { Success, FileOpenError, FileReadError, OtherError }; FileOperationResultCode open_and_read_file(const string& filename) { ifstream file(filename); if (!file.is_open()) { return FileOperationResultCode::FileOpenError; } string line; while (getline(file, line)) { cout << line << endl; } if (file.bad()) { return FileOperationResultCode::FileReadError; } return FileOperationResultCode::Success; } int main() { string filename; cout << "Enter the filename: "; getline(cin, filename); FileOperationResultCode result = open_and_read_file(filename); switch (result) { case FileOperationResultCode::Success: cout << "File successfully opened and read." << endl; break; case FileOperationResultCode::FileOpenError: cout << "Error opening the file." << endl; break; case FileOperationResultCode::FileReadError: cout << "Error reading from the file." << endl; break; case FileOperationResultCode::OtherError: cout << "An unknown error occurred." << endl; break; } return 0; }
この例では、open_and_read_file()
関数は FileOperationResultCode
列挙値を返します。 switch
ステートメントを使用すると、戻りコードに基づいてさまざまなアクションを実行できます。
以上がC++ におけるさまざまなリターン コードは何を意味しますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。