c++/c 获取cpp文件行号跟文件名

时间:2022-05-03
本文章向大家介绍c++/c 获取cpp文件行号跟文件名,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

编译器内置宏:

先介绍几个编译器内置的宏定义,这些宏定义不仅可以帮助我们完成跨平台的源码编写,灵活使用也可以巧妙地帮我们输出非常有用的调试信息。

ANSI C标准中有几个标准预定义宏(也是常用的):

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

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

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

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

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

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

下面例子:

#include<stdio.h>  
 
int main()  
{  
 char file[16];  
 char func[16];  
 int line;   
  sprintf(file,__FILE__); //文件名  
  sprintf(func,__FUNCTION__);//函数名  
  printf("file=%sn",file);  
  printf("func=%sn",func);  
  printf("%05dn",__LINE__);//行号   
 return 0;  
}