「労働者が自分の仕事をうまくやりたいなら、まず自分の道具を研ぎ澄まさなければなりません。」 - 孔子、「論語。陸霊公」
表紙 > プログラミング > C/C++ コンパイラで行番号を確認するにはどうすればよいですか?

C/C++ コンパイラで行番号を確認するにはどうすればよいですか?

2024 年 11 月 8 日に公開
ブラウズ:376

How Can I Determine Line Numbers in C/C   Compilers?

C/C コンパイラでの行番号の取得

C/C コードをデバッグするときに、エラーが発生します。一般的な解決策は、コードに行番号を手動で追加することですが、より効率的な方法は、組み込みのプリプロセッサ マクロを使用することです。

行番号用の標準プリプロセッサ マクロ

]C/C 標準では、2 つのプリプロセッサ マクロが定義されています。

  • __LINE__: ファイル内の現在の行番号を提供します。
  • __FILE__: 現在のファイル名を提供します。

使用例

論理エラーが発生した行番号を出力するには、次のコードを使用できます。

if (!Logical) {
  printf("Not logical value at line number %d in file %s\n", __LINE__, __FILE__);
}

その他のプリプロセッサ変数

行番号とファイル名に加えて、他のプリプロセッサ変数もデバッグに役立ちます:

  • __func__ : 現在の関数の名前を返します (C99 ではサポートされていますが、C コンパイラでは常にサポートされているわけではありません)。
  • __DATE__: 現在の日付を "Mmm dd yyyy" の形式で提供します。
  • __TIME__: を提供します"hh:mm:ss" 形式の現在時刻。

Implementation

これらのマクロをコードに組み込むことで、行番号を簡単に取得できます。手動更新を必要とせずに、その他のデバッグ情報を取得できます。これにより、デバッグ作業の精度と効率が向上します。

リリースステートメント この記事は次の場所に転載されています: 1729735884 侵害がある場合は、[email protected] に連絡して削除してください。
最新のチュートリアル もっと>

免責事項: 提供されるすべてのリソースの一部はインターネットからのものです。お客様の著作権またはその他の権利および利益の侵害がある場合は、詳細な理由を説明し、著作権または権利および利益の証拠を提出して、電子メール [email protected] に送信してください。 できるだけ早く対応させていただきます。

Copyright© 2022 湘ICP备2022001581号-3