首页 > 代码库 > c语言中的#line

c语言中的#line

#line指令用于改变 __LINE__和__FILE__的内容.

__LINE__和__FILE__都是编译程序中预定义的标识符,其中标识符__LINE__的内容是当前被编译代码行的行号,__FILE__的内容是当前被编译源文件的文件名.

#line的一般形式是:#line   number"filename"

  其中,number是正整数并变成__LINE__的新值;可选的"filename"是合法文件标识符并变成__FILE__的新值.

#line主要用于调试和特殊应用.

#line的使用实例:

 1 #include  <stdio.h> 2 #line 200"NewFileName" 3 int main()                    //从此处起行号为200 4 {                            //201 5     printf("%s\n",__FILE__);//#line重命名文件为NewFileName 6     printf("%d\n",__LINE__);//行号为203 7     printf("%d\n",__LINE__);//204 8     printf("%d\n",__LINE__);//205 9     return 0;10 }

运行结果为:

NewFileName203204205
附注:
__DATE__:用于记录源文件被编译成可执行文件的日期
__TIME__:用于记录源文件被编译成可执行文件的时间
__STDC__:指示编译器是否使用ANSI C标准
查看方式:
printf("%s\n",__DATE__);//编译文件的日期
printf("%s\n",__TIME__);//编译文件的时间
printf("%d\n",__STDC__);//指示编译器是否使用ANSI C标准

 

c语言中的#line