zoukankan      html  css  js  c++  java
  • C标准中一些预定义的宏,如__FILE__,__func__等

    C标准中一些预定义的宏
       C标准中指定了一些预定义的宏,对于编程经常会用到。下面这个表中就是一些常常用到的预定义宏。
      宏
      意义
      __DATE__
      进行预处理的日期(“Mmm dd yyyy”形式的字符串文字)
      __FILE__
      代表当前源代码文件名的字符串文字
      __LINE__
      代表当前源代码中的行号的整数常量
      __TIME__
      源文件编译时间,格式微“hh:mm:ss”
      __func__
      当前所在函数名
      
       对于__FILE__,__LINE__,__func__这样的宏,在调试程序时是很有用的,因为你可以很容易的知道程序运行到了哪个文件的那一行,是哪个函数。
       下面一个例子是打印上面这些预定义的宏的。
    #include 
    #include 

    void why_me();

    int main()
    {
        printf( "The file is %s. ", __FILE__ );
        printf( "The date is %s. ", __DATE__ );
        printf( "The time is %s. ", __TIME__ );
        printf( "This is line %d. ", __LINE__ );
        printf( "This function is %s. ", __func__ );

        why_me();

         return 0;
    }

    void why_me()
    {
        printf( "This function is %s ", __func__ );
        printf( "The file is %s. ", __FILE__ );
        printf( "This is line %d. ", __LINE__ );
    }

    打印信息:
    The file is debug.c.
    The date is Jun  6 2012.
    The time is 09:36:28.
    This is line 15.
    This function is main.
    This function is why_me
    The file is debug.c.
    This is line 27.

  • 相关阅读:
    SpringMVC+Shiro权限管理(转载)
    面试常见问题(转载)
    JavaScript 五种(非构造方式)继承
    JavaScript 五种(构造方式)继承
    Quartz.Net 基于XML配置启动
    jexus防止产生 *.core文件
    Last-Modified、ETag、Expires和Cache-Control
    正则表达式记录
    C# 操作mongodb子文档
    ASP.NET Core "完整发布,自带运行时" 到jexus
  • 原文地址:https://www.cnblogs.com/ptfe/p/11223614.html
Copyright © 2011-2022 走看看