GCC/G++編譯器和VS IDE中的一些預定義巨集和使用者自定義巨集
預定義巨集,
編譯器通常會根據平臺和編譯選項的不同,為被編譯的程式提供不同的預定義的巨集,
例如WIN32 WIN64 LINUX, 例如DEBUG, RELEASE.
1. 在使用gcc/g++編譯器時,可以通過以下命令打印出編譯器預編譯的巨集。
gcc -dM -E - < /dev/null
除了預定義巨集,編譯器還允許在編譯時,使用者自定義巨集:
1. 在使用gcc/g++編譯器時,通過新增 -D 選項,新增使用者自定義的巨集。
例如: g++ -o test -D USERM test.cpp
這樣就在預處理test.cpp之前,添加了 USERM這個巨集定義。
2. 在VS IDE中,可以點選專案的properties頁面,選擇C++頁選項,點選preprocessor,在右邊的preProcessor Definitions中新增使用者自己的巨集,
同樣,也會在project預處理之前新增自定義的巨集。
參考:
相關推薦
GCC/G++編譯器和VS IDE中的一些預定義巨集和使用者自定義巨集
預定義巨集, 編譯器通常會根據平臺和編譯選項的不同,為被編譯的程式提供不同的預定義的巨集, 例如WIN32 WIN64 LINUX, 例如DEBUG, RELEASE. 1. 在使用gcc/g++編譯器時,可以通過以下命令打印出編譯器預編譯的巨集。 gcc -dM -E - < /dev/null
C標準中一些預定義的巨集
C標準中指定了一些預定義的巨集,對於程式設計經常會用到。下面這個表中就是一些常常用到的預定義巨集。 巨集 意義 __DATE__ 進行預處理的日期(“Mmm dd yyyy”形式的字串文字) __FILE__ 代表當前原始碼檔名的字串文字
cmake中一些預定義變數
PROJECT_SOURCE_DIR 工程的根目錄PROJECT_BINARY_DIR 執行cmake命令的目錄,通常是${PROJECT_SOURCE_DIR}/buildCMAKE_INCLUDE
Linux環境下GNU, GCC, G++編譯器(轉)
c代碼 但是 關系 例如 ann name 語法規則 否則 int 一,GNU GNU是“GNU ‘s Not Unix”的遞歸縮寫, Stallman宣布GNU應當發音為Guh-NOO(革奴)以避免與new這個單詞混淆(註:Gnu在英文中原意為非洲牛羚,發音與new相同)
在sublime text和vs code中使用Regex進行替換的方式
tel blog mark sublime logs 括號 ext vs code 分組 例如,如何將13012345678替換為 tel: 13012345678? 搜索的regex為([0-9]{11}), 替換為:tel:$1 註意, 在regex表達式外一定要有分組
J2EE中一些常用的方法和細節整理
1.setAttribute、getAttribute方法 方法 描述 注意點 void setAttribute(String name,Object o) 設定屬性的名稱及內容
intellij idea 怎麼部署javaweb專案(匯入的專案和在ide中寫的專案)到Tomcat中,詳細步驟,為什麼不能熱部署專案
更多IntelliJ IDEA 的操作請參考:https://blog.csdn.net/qq_33442160 寫好了javaweb專案後,之前我一直按照網上的方式嘗試了很久,也用了一段時間intellij idea ,現在總結一下部署的方法. 1. 檢
gcc/g++使用第三方庫時新增標頭檔案路徑和庫檔案路徑的方法
本文總結了使用第三方庫函式時將其路徑告訴編譯器(gcc和g++同理)的2種常用方式,並舉例說明了每種方式的具體用法。方法一:在編譯自己的專案時新增-L和-I編譯選項1)新增標頭檔案路徑:-I #指明標頭檔案的路徑2)新增庫檔案路徑:-L #指定目錄。link的
Visual Studio IDE中快速進行h檔案和cpp檔案切換的巨集
新建一個巨集模組,把以下程式碼複製到模組中儲存,然後選擇“工具->選項->環境->鍵盤”,在顯示命令包含中輸入SourceHeaderJumper找到相應命令,選中後繫結一個快捷鍵即可。 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
【群話題精華】五月集錦—— 機器學習和深度學習中一些值得思考的問題
原創宣告:本文為 SIGAI 原創文章,僅供個人學習使用,未經允許,不能用於商業目的。 SIGAI微信技術交流群已經運營3周了,在這期間群友們對很多技術問題進行了熱烈的討論,在這裡,我們將精華的話題整理出來,做一個總結。以後在每個月我們都會有類似的總結,敬請期待。神經網
C學習筆記一:Window8.1 上配置gcc/g++編譯器
最近有工作需要涉及到C語言,以前學校裡學的也忘的差不多了,重頭複習複習。 公司的電腦是WIndows8.1的,懶得裝visual studio 那個大個頭,網上百度了下,看中了MinGW,這裡記錄下配置過程,以備以後查詢。 首先,瞭解下minGW: MinGW是指只用自由軟
JM、H.264中一些引數的設定和含義
一·引數說明 這一節闡述的是encoder.cfg 中的引數對編碼過程的影響 要注意的是encoder.cfg 中的引數跟input 結構體中的變數是一一對應的 StartFrame:從視訊流的第幾幀開始編碼 FramesToBeEncoded:指明瞭除去 B幀後將要被編碼的幀數 inp
matlab和c++混合程式設計---matlab和vs的環境配置問題及方法和步驟(轉載)
matlab和c++混合程式設計---方法和步驟 matlab和c++混合程式設計---matlab和vs的環境配置問題 摘要:Matlab具有很強的數值計算和分析等能力,而C/C++是目前最為流行的高階程式設計語言,兩者互補結合的混合程式設計在科學研究和工程實踐中具有非常重要的意義。從Matlab呼叫C
Mybatis需要返回的資料引數中在資料表中沒有對應的欄位,自定義實體類和resultmap作為返回值型別
自定義實體類:因為需要做相關記錄的統計,而表中沒有統計欄位 public class TrafficJeevesDistrictCount { //施工top5+1 按區域 private String districtInfo; private
visual studio 配置屬性中增加自定義巨集和巨集值
visual studio中配置自己的巨集。 下面是vs中的巨集,SolutionDir這個是工程所在目錄資料夾。如何建立自己的巨集呢 檢視->其他視窗->屬性管理器,跳轉到屬性管理器介面。然後選擇一個工程,右鍵出現下圖所示 點選新增新專案屬性表,給屬性表命名一個
一步一步教你理解和實現iOS中的鏈式程式設計和函數語言程式設計
談到鏈式程式設計和函數語言程式設計,那Masonry幾乎就是最經典的代表.如: make.top.equalTo(self.view).offset(60) 像這樣top.equalTo(s
Django-rest_framework中利用jwt登入驗證時,自定義返回憑證和登入校驗支援手機號
安裝 pip install djangorestframework-jwt 在Django.settings中配置 REST_FRAMEWORK = { 'DEFAULT_AUTHENTICATION_CLASSES': ( 'rest_framework_jw
GCC前處理器中的預定義巨集
3.7 Predefined Macros Several object-like macros are predefined; you use them without supplying their definitions. They fall into three
Django中利用filter與simple_tag為前端自定義函數的實現方法
但是 col filter 成了 應用程序 註冊 number 獲取 except 前言 Django的模板引擎提供了一般性的功能函數,通過前端可以實現多數的代碼邏輯功能,這裏稱之為一般性,是因為它僅支持大多數常見情況下的函數功能,例如if判斷,ifequal對比返回值等
Delphi中Form的position屬性與程式碼自定義窗體位置
通過Form的Position屬性可設定窗體的初始位置,如選擇DesktopCenter為桌面中心,ScreenCenter為螢幕中心,等等。 這個屬性在很多時候簡化了程式程式碼。 但是,如果設定了position為ScreenCenter和DesktopCenter等,在窗體oncreate