武漢服務(wù)好的建站平臺(tái)公司愛站網(wǎng)絡(luò)挖掘詞
一、C++修飾符類型:
C++允許在char、int、double數(shù)據(jù)類型前放置修飾符。
數(shù)據(jù)類型修飾符:
◆?signed:表示變量可以存儲(chǔ)負(fù)數(shù)。對(duì)于整型變量來說,signed 可以省略,因?yàn)檎妥兞磕J(rèn)為有符號(hào)類型。
◆?unsigned:表示變量不能存儲(chǔ)負(fù)數(shù)。對(duì)于整型變量來說,unsigned 可以將變量范圍擴(kuò)大一倍。
◆?short:表示變量的范圍比 int 更小。short int 可以縮寫為 short。
◆?long:表示變量的范圍比 int 更大。long int 可以縮寫為 long。
◆?long long:表示變量的范圍比 long 更大。C++11 中新增的數(shù)據(jù)類型修飾符。
◆?float:表示單精度浮點(diǎn)數(shù)。
◆?double:表示雙精度浮點(diǎn)數(shù)。
◆?bool:表示布爾類型,只有 true 和 false 兩個(gè)值。
◆?char:表示字符類型。
◆?wchar_t:表示寬字符類型,可以存儲(chǔ) Unicode 字符。
C++中的類型限定符:
限定符 | 含義 |
const | const?定義常量,表示該變量的值不能被修改。 |
volatile | 修飾符?volatile?告訴該變量的值可能會(huì)被程序以外的因素改變,如硬件或其他線程。。 |
restrict | 由?restrict?修飾的指針是唯一一種訪問它所指向的對(duì)象的方式。只有 C99 增加了新的類型限定符 restrict。 |
mutable | 表示類中的成員變量可以在 const 成員函數(shù)中被修改。 |
static | 用于定義靜態(tài)變量,表示該變量的作用域僅限于當(dāng)前文件或當(dāng)前函數(shù)內(nèi),不會(huì)被其他文件或函數(shù)訪問。 |
register | 用于定義寄存器變量,表示該變量被頻繁使用,可以存儲(chǔ)在CPU的寄存器中,以提高程序的運(yùn)行效率。 |
二、C++存儲(chǔ)類:
存儲(chǔ)類定義C++程序中變量/函數(shù)的范圍和聲明周期。C++程序可用的存儲(chǔ)類:static、extern、mutable。
Static存儲(chǔ)類表示編譯器在程序的生命周期內(nèi)保持局部變量的存在,而不需要在每次進(jìn)入和離開作用域時(shí)進(jìn)行創(chuàng)建和銷毀。static修飾符也可以應(yīng)用于全局變量,使變量的作用域限制在聲明的文件內(nèi)。
extern存儲(chǔ)類用于提供一個(gè)全局變量的引用。全局變量對(duì)所有的程序文件都是可見的。extern是用來在另一個(gè)文件中聲明一個(gè)全局變量或函數(shù)。extern 修飾符通常用于當(dāng)有兩個(gè)或多個(gè)文件共享相同的全局變量或函數(shù)的時(shí)候。
mutable僅適用于類的對(duì)象。mutable成員可以通過const成員函數(shù)修改。
三、C++運(yùn)算符:
運(yùn)算符是一種告訴編譯器執(zhí)行特定的數(shù)學(xué)或邏輯操作的符號(hào)。C++提供算術(shù)運(yùn)算符、關(guān)系運(yùn)算符、邏輯運(yùn)算符、位運(yùn)算符、賦值運(yùn)算符、雜項(xiàng)運(yùn)算符。
9.1、算數(shù)運(yùn)算符:
運(yùn)算符 | 描述 |
+ | 把兩個(gè)操作數(shù)相加 |
- | 從第一個(gè)操作數(shù)中減去第二個(gè)操作數(shù) |
* | 把兩個(gè)操作數(shù)相乘 |
/ | 分子除以分母 |
% | 取模運(yùn)算符,整除后的余數(shù) |
++ | 自增運(yùn)算符,整數(shù)值增加 1 |
-- | 自減運(yùn)算符,整數(shù)值減少 1 |
9.2、關(guān)系運(yùn)算符:
運(yùn)算符 | 描述 |
== | 檢查兩個(gè)操作數(shù)的值是否相等,如果相等則條件為真。 |
!= | 檢查兩個(gè)操作數(shù)的值是否相等,如果不相等則條件為真。 |
> | 檢查左操作數(shù)的值是否大于右操作數(shù)的值,如果是則條件為真。 |
< | 檢查左操作數(shù)的值是否小于右操作數(shù)的值,如果是則條件為真。 |
>= | 檢查左操作數(shù)的值是否大于或等于右操作數(shù)的值,如果是則條件為真。 |
<= | 檢查左操作數(shù)的值是否小于或等于右操作數(shù)的值,如果是則條件為真。 |
9.3、邏輯運(yùn)算符:
運(yùn)算符 | 描述 |
&& | 稱為邏輯與運(yùn)算符。如果兩個(gè)操作數(shù)都 true,則條件為 true。 |
|| | 稱為邏輯或運(yùn)算符。如果兩個(gè)操作數(shù)中有任意一個(gè) true,則條件為 true。 |
! | 稱為邏輯非運(yùn)算符。用來逆轉(zhuǎn)操作數(shù)的邏輯狀態(tài),如果條件為 true 則邏輯非運(yùn)算符將使其為 false。 |
9.4、位運(yùn)算符:
運(yùn)算符 | 描述 |
& | 按位與操作,按二進(jìn)制位進(jìn)行"與"運(yùn)算。運(yùn)算規(guī)則: 0&0=0; ??0&1=0; ???1&0=0; ????1&1=1; |
| | 按位或運(yùn)算符,按二進(jìn)制位進(jìn)行"或"運(yùn)算。運(yùn)算規(guī)則: 0|0=0; ??0|1=1; ??1|0=1; ???1|1=1; |
^ | 異或運(yùn)算符,按二進(jìn)制位進(jìn)行"異或"運(yùn)算。運(yùn)算規(guī)則: 0^0=0; ??0^1=1; ??1^0=1; ?1^1=0; |
~ | 取反運(yùn)算符,按二進(jìn)制位進(jìn)行"取反"運(yùn)算。運(yùn)算規(guī)則: ~1=-2; ??~0=-1; |
<< | 二進(jìn)制左移運(yùn)算符。將一個(gè)運(yùn)算對(duì)象的各二進(jìn)制位全部左移若干位(左邊的二進(jìn)制位丟棄,右邊補(bǔ)0)。 |
>> | 二進(jìn)制右移運(yùn)算符。將一個(gè)數(shù)的各二進(jìn)制位全部右移若干位,正數(shù)左補(bǔ)0,負(fù)數(shù)左補(bǔ)1,右邊丟棄。 |
9.5、賦值運(yùn)算符:
運(yùn)算符 | 描述 |
= | 簡(jiǎn)單的賦值運(yùn)算符,把右邊操作數(shù)的值賦給左邊操作數(shù) |
+= | 加且賦值運(yùn)算符,把右邊操作數(shù)加上左邊操作數(shù)的結(jié)果賦值給左邊操作數(shù) |
-= | 減且賦值運(yùn)算符,把左邊操作數(shù)減去右邊操作數(shù)的結(jié)果賦值給左邊操作數(shù) |
*= | 乘且賦值運(yùn)算符,把右邊操作數(shù)乘以左邊操作數(shù)的結(jié)果賦值給左邊操作數(shù) |
/= | 除且賦值運(yùn)算符,把左邊操作數(shù)除以右邊操作數(shù)的結(jié)果賦值給左邊操作數(shù) |
%= | 求模且賦值運(yùn)算符,求兩個(gè)操作數(shù)的模賦值給左邊操作數(shù) |
<<= | 左移且賦值運(yùn)算符 |
>>= | 右移且賦值運(yùn)算符 |
&= | 按位與且賦值運(yùn)算符 |
^= | 按位異或且賦值運(yùn)算符 |
|= | 按位或且賦值運(yùn)算符 |
9.6、雜項(xiàng)運(yùn)算符:
運(yùn)算符 | 描述 |
sizeof | sizeof 運(yùn)算符返回變量的大小。例如,sizeof(a) 將返回 4,其中 a 是整數(shù)。 |
Condition ? X : Y | 條件運(yùn)算符。如果 Condition 為真 ? 則值為 X : 否則值為 Y。 |
, | 逗號(hào)運(yùn)算符會(huì)順序執(zhí)行一系列運(yùn)算。整個(gè)逗號(hào)表達(dá)式的值是以逗號(hào)分隔的列表中的最后一個(gè)表達(dá)式的值。 |
.(點(diǎn))和 ->(箭頭) | 成員運(yùn)算符用于引用類、結(jié)構(gòu)和共用體的成員。 |
Cast | 強(qiáng)制轉(zhuǎn)換運(yùn)算符把一種數(shù)據(jù)類型轉(zhuǎn)換為另一種數(shù)據(jù)類型。例如,int(2.2000) 將返回 2。 |
& | 指針運(yùn)算符 &?返回變量的地址。例如 &a; 將給出變量的實(shí)際地址。 |
* | 指針運(yùn)算符 *?指向一個(gè)變量。例如,*var; 將指向變量 var。 |
C++中的運(yùn)算符優(yōu)先級(jí):
類別 | 運(yùn)算符 | 結(jié)合性 |
后綴 | () [] -> . ++ - - | 從左到右 |
一元 | + - ! ~ ++ - - (type)* & sizeof | 從右到左 |
乘除 | * / % | 從左到右 |
加減 | + - | 從左到右 |
移位 | << >> | 從左到右 |
關(guān)系 | < <= > >= | 從左到右 |
相等 | == != | 從左到右 |
位與 AND | & | 從左到右 |
位異或 XOR | ^ | 從左到右 |
位或 OR | | | 從左到右 |
邏輯與 AND | && | 從左到右 |
邏輯或 OR | || | 從左到右 |
條件 | ?: | 從右到左 |
賦值 | = += -= *= /= %=>>= <<= &= ^= |= | 從右到左 |
逗號(hào) | , | 從左到右 |
四、C++循環(huán):
循環(huán)類型:
循環(huán)類型 | 描述 |
while 循環(huán) | 當(dāng)給定條件為真時(shí),重復(fù)語句或語句組。它會(huì)在執(zhí)行循環(huán)主體之前測(cè)試條件。 |
for 循環(huán) | 多次執(zhí)行一個(gè)語句序列,簡(jiǎn)化管理循環(huán)變量的代碼。 |
do...while 循環(huán) | 除了它是在循環(huán)主體結(jié)尾測(cè)試條件外,其他與 while 語句類似。 |
嵌套循環(huán) | 您可以在 while、for 或 do..while 循環(huán)內(nèi)使用一個(gè)或多個(gè)循環(huán)。 |
循環(huán)控制語句:
控制語句 | 描述 |
break 語句 | 終止?loop?或?switch?語句,程序流將繼續(xù)執(zhí)行緊接著 loop 或 switch 的下一條語句。 |
continue 語句 | 引起循環(huán)跳過主體的剩余部分,立即重新開始測(cè)試條件。 |
goto 語句 | 將控制轉(zhuǎn)移到被標(biāo)記的語句。但是不建議在程序中使用 goto 語句。 |
無線循環(huán):
For(;;)
While(1)
- C++判斷:
判斷語句:
語句 | 描述 |
if 語句 | 一個(gè)?if 語句?由一個(gè)布爾表達(dá)式后跟一個(gè)或多個(gè)語句組成。 |
if...else 語句 | 一個(gè)?if 語句?后可跟一個(gè)可選的?else 語句,else 語句在布爾表達(dá)式為假時(shí)執(zhí)行。 |
嵌套 if 語句 | 您可以在一個(gè)?if?或?else if?語句內(nèi)使用另一個(gè)?if?或?else if?語句。 |
switch 語句 | 一個(gè)?switch?語句允許測(cè)試一個(gè)變量等于多個(gè)值時(shí)的情況。 |
嵌套 switch 語句 | 您可以在一個(gè)?switch?語句內(nèi)使用另一個(gè)?switch?語句。 |
?:條件運(yùn)算符:
Exp1 ? Exp2 : Exp3;