同前FILE__と_LINE_うマクロ

1451 ワード

<C intefaces and implements>を見て、_u uを見ました.FILE__と_LINE_ひ、よく分かりませんでした.そこで調べてみました.
同前FILE__と_LINE_うは、事前定義されたマクロです.標準的なコンパイラでこれらのマクロを使用することができます.
同前FILE_マクロ出力は現在の入力ファイルのパスで、ファイル名を含めています.LINE_うマクロは、現在のコードの行番号(整数変数)を出力します.
以下のテキスト部分は、http://gcc.gnu.org/onlinedocs/cpp/Standard-Predefined-Macros.html __FILE__This macro expands to the name of the current input file,in the form of a string constant.This is the path by which the prepcessor opened the file,not the shot name specified in`  "/usr/local/include/myheader.h" is a possible expansion of this macro.  __LINE__This macro expans to the current input line number,in the form of a decimal integer constant.While we call it a prefined macro,it's a pretty strange macro,since its“definition”changes with each netline.source.contre.incle.__FILE__ and  __LINE__ aruseful in generation an error message to report an inconsistency detected by the program;the message can state the source line the inconsistency was detected.For example、
     fprintf (stderr, "Internal error: "
                      "negative string length "
                      "%d at %s, line %d.",
              length, __FILE__, __LINE__);
#include<stdio.h>
int main(){
	printf("%s
",__FILE__); printf("%d
",__LINE__); return 0; }