题目:如何输出源文件的标题和目前执行行的行数 

答案:int line = __LINE__;
            char *file = __FILE__;
            cout<<"file name is "<<(file)<<",line is "<<(line)<<endl;

 

ANSI C标准中有几个标准预定义宏:

__LINE__:在源代码中插入当前源代码行号;

__FILE__:在源文件中插入当前源文件名;

__DATE__:在源文件中插入当前的编译日期

__TIME__:在源文件中插入当前编译时间;

__STDC__:当要求程序严格遵循ANSI C标准时该标识被赋值为1;

__cplusplus:当编写C++程序时该标识符被定义。

这里我们根据题目用到的是“__LINE__”和“__FILE__”。

 

执行结果如下图,当前源文件名是../test/main.cpp,目前执行行的行数是第九行,我一开始不理解这个行数是指什么,我换了几次“int line = __LINE__;”这一行代码的行位置,发现编译结果是随着这一行代码的位置而变化的。


如何输出源文件的标题和目前执行行的行数(面试题)

相关文章:

  • 2021-04-09
  • 2022-12-23
  • 2022-12-23
  • 2021-12-28
  • 2021-07-14
  • 2022-12-23
  • 2021-12-02
猜你喜欢
  • 2022-12-23
  • 2022-12-23
  • 2021-09-19
  • 2021-12-25
  • 2021-06-25
  • 2022-12-23
  • 2021-04-25
相关资源
相似解决方案