原文:查看gcc內部默認的宏定義和打開自行設置的宏定義

查看gcc默認的內置宏定義 或者 helloworld.c為用戶隨意編寫的c測試用例,隨意拿個c程序就行。 E 預處理后即停止,不進行編譯。預處理后的代碼送往標准輸出。GCC忽略任何不需要預處理的輸入文件。 dM 告訴預處理器輸出有效的宏定義列表 預處理結束時仍然有效的宏定義 。該選項需結合 E 選項使用。 打開用戶自行設置的宏定義 helloworld.c文件中的宏定義DEBUG如下: 總結: ...

2021-05-11 10:21 0 1290 推薦指數:

查看詳情

查看GCC的內置定義

開發過程中我們常常需要使用定義。。 為了盡可能多的使用GCC為我們提供的特性,首先我們需要知道gcc提供了那些特性。。。 gcc -dM -E - < /dev/null 沒錯,就這么一句話就可以搞定了。。。 ...

Sat Sep 22 03:56:00 CST 2018 0 1398
Linux下的GCC編譯器內部定義

Linux下的GCC編譯器內部定義 經常在一些開源的程序中看到一些定義,卻看不到這些定義是在哪些地方定義的,其實有些定義是交叉編譯工具GCC定義好的,比如:__GNUC__,__ELF__等等,怎么看到這些定義呢,可以采用以下命令來查看gcc -E -dM ...

Wed May 08 18:40:00 CST 2019 0 658
定義替換

一. c /c++語言中使用的主要目的主要有 3 個: 1. 提高代碼的可讀性; 把用到的常量定義成有意義的名字; 2. 無需函數調用,運行效率高; 對於一些簡單的操作,無需調用函數,雖然編程是強調模塊化,但是函數調用時,需要保護現場和恢復現場。這些都需要耗時。對於復雜的操作 ...

Mon Aug 05 00:38:00 CST 2019 0 1232
gcc編譯階段打印定義的內容

背景 總所周知,代碼量稍微大一點的C/C++項目的一些定義都會比較復雜,有時候會嵌套多個#if/#else判斷分支和一堆#ifdef/#undef讓你單看代碼的話很難判斷出定義的具體內容。 如果有一種機制能夠幫助我們在構建期間打印出的實際內容,就能幫我們更快地捋清楚代碼邏輯 ...

Mon Dec 21 01:12:00 CST 2020 0 935
gcc中預定義__GNUC__

今天在看Linux系統編程這本書的代碼的時候看到了__GNUC__,不太清楚這個所以去查了一下,以此記錄。GNU C預定義了一系列的,這些都是以雙下划線開始的,這里只講一下__GNUC__ __GNUC_MINOR__ __GNUC_PATCHLEVEL__,其他GNU C的預定義 ...

Sat Jul 22 08:14:00 CST 2017 0 10718
定義

定義是C提供的三種預處理功能的其中一種,這三種預處理包括:定義、文件包含、條件編譯。 1.不帶參數的定義定義又稱為代換、替換,簡稱“”。    格式:   #define 標識符 字符串    其中的標識符就是所謂的符號常量,也稱為“名”,字符串可以是常數、表達式、格式 ...

Wed Apr 11 06:11:00 CST 2012 0 8964
獲取gcc和clang的內置定義

下面是對Gcc的內置定義的解釋: https://gcc.gnu.org/onlinedocs/cpp/Common-Predefined-Macros.html https://github.com/gcc-mirror/gcc/blob/master/gcc/config ...

Wed Feb 20 06:42:00 CST 2019 0 535
 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM