近來看了一下c++api,覺得有些用法有些不錯。做一點記錄。
預處理命令
#, ##命令
# 和 ## 操作符是和#define巨集使用的.使用# 使在#後的首個引數返回為乙個帶引號的字串. 例如, 命令
#define to_string( s ) #s
將會使編譯器把以下命令
cout << to_string( hello world! ) << endl;
理解為cout << "hello world!" << endl;
使用##鏈結##前後的內容. 例如, 命令
#define concatenate( x, y ) x ## y
將會使編譯器把
int xy = 10;
cout << concatenate( x, y ) << endl;
解釋為cout << xy << endl;
理所當然,將會在標準輸出處顯示'10'.
再看看api中_t是怎麼使用##命令的吧,檢視_t,它是用巨集_text定義的,再看看_text.
#define _t(x) __text(x)
#define __text(quote) l##quote
所有像_t(「char test」)轉出來就是l「char test」, 即寬字元的字串。
預定義的變數
__line__ 和 __file__ 變數表示正在處理的當前行和當前檔案.
__date__ 變數表示當前日期,格式為month/day/year(月/日/年).
__time__ 變數描述當前的時間,格式為hour:minute:second(時:分:秒).
_cplusplus 變數只在編譯乙個c++程式時定義.
__stdc__ 變數在編譯乙個c程式時定義,編譯c++時也有可能定義.
這些引數在不同的編譯器可能會有所不同, 但是一般是可用的. 這些變數是系統預定義好的,就和我們用#define巨集定義語句定義好的一樣。
基本資料型別
c語言包含5個基本資料型別: void, integer, float, double, 和 char.
型別 描述
void 空型別
int 整型
float 浮點型別
double 雙精度浮點型別
char 字元型別
c++ 定義了另外兩個基本資料型別: bool 和 wchar_t.
型別 描述
bool 布林型別, 值為true 或 false
wchar_t 寬字元型別
C C 基本資料型別
學了c然後c 然後mfc windows,然後是c 其中資料型別很多,由基本型別衍生的typedef型別也n多。熟知基本資料型別是我們正確表達實際問題中各種資料的前提,因此我分類總結了一下c c windows c 基本資料型別,以便日後查閱。ansi c c 基本資料型別 說明 1 型別修飾符si...
C C 基本資料型別
學了c然後 c 然後 mfc windows,然後是c 其中資料型別很多,由基本型別衍生的 typedef 型別也n 多。熟知基本資料型別是我們正確表達實際問題中各種資料的前提,因此我分類總結了一下 c c windows c 基本資料型別,以便日後查閱。ansi c c 基本資料型別 type s...
c c 基本資料型別
整型 浮點型 int main 執行結果 size char 1 short int 2 int 4 long 4 long long int 8 int long long 8 long long 8 三種寫法相同 float 4 double 8型別 大小 byte char 1short 2i...