C++中的幾個特殊符號說明
C++的幾個特殊符號
- #
把宏參數(shù)變?yōu)橐粋€字符串,僅可用于宏定義中。
如:
int GetLength(std::string str)
{
?? ?return str.length();
}
#define LEN(str)?? ?GetLength(#str)
int main()
{
?? ?std::string str = "abcdefg";
?? ?cout << LEN(str) << endl;
?? ?return 0;
}
// 上述程序?qū)⑤敵?,而不是7- ##
把兩個宏參數(shù)連接到一起,僅可用于宏定義中。
如:
int GetLength(std::string str)
{
?? ?return str.length();
}
#define TOTALLEN(str1, str2)?? ? ?GetLength(str1##str2)
int main()
{
?? ?std::string str1 = "abcdefg";
?? ?std::string str2 = "hijk";
?? ?std::string str1str2 = "hello";
?? ?cout << TOTALLEN(str1,str2) << endl;
?? ?return 0;
}
// 上述程序輸出5,即str1str2的長度- \
在宏定義中用于將不同行的上下文連接成一行
- __DATE__
在源文件中插入當前編譯的日期
- __TIME__
在源文件中插入當前編譯的時間
- __FILE__
在源文件中插入當前源文件路徑及文件名
- __LINE__
在源文件中插入當前源代碼的行號
C++的“>>“和“<<“
操作符作用
C++中標準輸入輸出中所使用的">>“和”<<"是重載運算符作用,意義是流插入運算付和流提取運算符

位操作符
在了解移位操作符和位操作符之前,我們需要知道一個十進制的整數(shù)是如何在計算機中存儲的,以int a = 10 為例,int型占4個字節(jié),一個字節(jié)有8位,正數(shù)十以二進制存儲在這32位中,其在內(nèi)存中的存儲如下,為方便視圖中間部分已省略。注意:注意:注意:
" 移位操作都是針對補碼進行的,正數(shù)的原碼、補碼、反碼相同,負數(shù)的原碼取反得反碼,反碼加一得補碼。"
- ">>"右移操作符
- "<<"左移操作符
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
C++使用fdk-aac實現(xiàn)將音頻PCM編碼成aac
mp4的音頻流通常是aac編碼,我們做音視頻采集的時候就需要將,采集的音頻PCM編碼成aac,本文就來為大家介紹一下C++如何使用fdk-aac實現(xiàn)將音頻PCM編碼成aac吧2023-11-11
C++的類型轉(zhuǎn)換(強轉(zhuǎn))你了解嗎
這篇文章主要為大家詳細介紹了C++的類型轉(zhuǎn)換,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助2022-02-02

