#line指令改变_ _ _LINE_ _ _和_ _ _FILE_ _ _的内容。_ _ _LINE_ _ _和_ _ _FILE_ _ _都是编译程序中预定义的标识符。标识符_ _ _LINE_ _ _的内容是当前被编译代码行的行号,_ _ _FILE_ _ _的内容是当前被编译源文件的文件名。#line的一般形式是:
#line number"filename"
其中,number是正整数并变成_ _ _LINE_ _ _的新值;可选的"filename"是合法文件标识符并变成_ _ _FILE_ _ _的新值。#line主要用于调试和特殊应用。
例如,以下代码说明行计数从100开始。printf()语句显示行号102,因为该句是#line 100后面的第3行。
#include <stdio.h>
#line 100 //设置行计数
int main() // line 100
{ // line 101
printf("%d\n",_ _ _LINE_ _ _); // line102
return 0;
}
现在我们对__LINE__的理解应该很清晰了吧。
#line number"filename"
其中,number是正整数并变成_ _ _LINE_ _ _的新值;可选的"filename"是合法文件标识符并变成_ _ _FILE_ _ _的新值。#line主要用于调试和特殊应用。
例如,以下代码说明行计数从100开始。printf()语句显示行号102,因为该句是#line 100后面的第3行。
#include <stdio.h>
#line 100 //设置行计数
int main() // line 100
{ // line 101
printf("%d\n",_ _ _LINE_ _ _); // line102
return 0;
}
现在我们对__LINE__的理解应该很清晰了吧。