C语言#line预处理器


c语言里有个很少用到的宏 #line,这个宏通常是和__LINE__宏一起使用的,__LINE__宏表示当前c语句在源文件中的行数,以前也只是在书上看到过,写过一些实例小程序,实际应用中并无使用。

     好了,废话不说,举个例子来说明 #line宏的使用:
       1:#include "iostream"
       2:#line 100
       3:using namespace std;
       4:
       5:int main(int argc, char* argv[])
       6:{
       7:cout<<"__LINE__:"<<__LINE__<<endl;
       8:
       9:   return 0;
       10: }
 
        输出结果是:__LINE__:104
 
        本来应该是输出:__LINE__:7,因为“cout<<"__LINE__:"<<__LINE__<<endl;”语句在第7行;
但是有了#line 100 ,则从“#line 100”所在行的下一行被认为是第100行,所以输出的行号是104了。


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM