C標準中一些預定義的宏

來源:互聯網
上載者:User

C標準中一些預定義的宏
摘自:http://www.wangchao.net.cn/bbsdetail_149674.html


C標準中指定了一些預定義的宏,對於編程經常會用到。下面這個表中就是一些常常用到的預定義宏。

意義
__DATE__
  進行預先處理的日期(“Mmm dd yyyy”形式的字串文字)
__FILE__
  代表當前原始碼檔案名稱的字串文字
__LINE__
  代表當前原始碼中的行號的整數常量
__TIME__
  源檔案編譯時間,格式微“hh:mm:ss”
__func__
  當前所在函數名
  
    對於__FILE__,__LINE__,__func__這樣的宏,在偵錯工具時是很有用的,因為你可以很容易的知道程式運行到了哪個檔案的那一行,是哪個函數。

    下面一個例子是列印上面這些預定義的宏的。
  #include <stdio.h>
  #include <stdlib.h>
  void why_me();
  int main()
  {
    printf( "The file is %s.\n", __FILE__ );
    printf( "The date is %s.\n", __DATE__ );
    printf( "The time is %s.\n", __TIME__ );
    printf( "This is line %d.\n", __LINE__ );
    printf( "This function is %s.\n", __func__ );
   
    why_me();
   
    return 0;
  }
  void why_me()
  {
    printf( "This function is %s\n", __func__ );
    printf( "The file is %s.\n", __FILE__ );
    printf( "This is line %d.\n", __LINE__ );
  }

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.