一文詳解C++中運(yùn)算符的使用
一、算術(shù)運(yùn)算符
| 運(yùn)算符 | 描述 |
|---|---|
| + | 把兩個(gè)操作數(shù)相加 |
| - | 從第一個(gè)操作數(shù)中減去第二個(gè)操作數(shù) |
| * | 把兩個(gè)操作數(shù)相乘 |
| / | 分子除以分母 |
| % | 取模運(yùn)算符,整除后的余數(shù) |
| ++ | 自增運(yùn)算符,整數(shù)值增加 1 |
| – | 自減運(yùn)算符,整數(shù)值減少 1 |
通過(guò)下面的例子可以讓我們更好的理解C++中的運(yùn)算符的意義與使用方法。
#include <iostream>
using namespace std;
int main()
{
int a = 66;
int b = 33;
int c;
c = a + b;
cout << "a + b 的值是 " << c << endl ;
c = a - b;
cout << "a - b 的值是 " << c << endl ;
c = a * b;
cout << "a * b 的值是 " << c << endl ;
c = a / b;
cout << "a / b 的值是 " << c << endl ;
c = a % b;
cout << "a % b 的值是 " << c << endl ;
return 0;
}
輸出:
a + b 的值是 99
a - b 的值是 33
a * b 的值是 2178
a / b 的值是 2
a % b 的值是 0
注意:需要知道a++和++a的區(qū)別(a–一樣)
a++ :a先進(jìn)行賦值,然后再進(jìn)行++運(yùn)算。
++a :a首先進(jìn)行++運(yùn)算,然后賦值給a。
下面的代碼可以更好的展示他們兩個(gè)的關(guān)系:
#include <iostream>
using namespace std;
int main()
{
int z = 1;
cout << z++ << endl;
int h = 1;
cout << ++h;
return 0;
}
輸出:
1
2
二、關(guān)系運(yùn)算符
| 運(yùn)算符 | 描述 |
|---|---|
| == | 檢查兩個(gè)操作數(shù)的值是否相等,如果相等則條件為真。 |
| != | 檢查兩個(gè)操作數(shù)的值是否相等,如果不相等則條件為真。 |
| > | 檢查左操作數(shù)的值是否大于右操作數(shù)的值,如果是則條件為真。 |
| < | 檢查左操作數(shù)的值是否小于右操作數(shù)的值,如果是則條件為真。 |
| <= | 檢查左操作數(shù)的值是否大于或等于右操作數(shù)的值,如果是則條件為真。 |
| >= | 檢查左操作數(shù)的值是否小于或等于右操作數(shù)的值,如果是則條件為真。 |
#include <iostream>
using namespace std;
int main()
{
int a = 21;
int b = 10;
int c ;
if( a == b )
{
cout << "a 等于 b" << endl ;
}
else
{
cout << "a 不等于 b" << endl ;
}
if ( a < b )
{
cout << "a 小于 b" << endl ;
}
else
{
cout << "a 不小于 b" << endl ;
}
if ( a > b )
{
cout << "a大于 b" << endl ;
}
else
{
cout << "a 不大于 b" << endl ;
}
return 0;
}
輸出:
a 不等于 b
a 不小于 b
a大于 b
下面的代碼可以讓我們更好的理解邏輯運(yùn)算符:
#include <iostream>
using namespace std;
int main()
{
int a = 10;
int b = 20;
int c = 30;
int d = 100;
if( a == b || c < d)
cout << "6666" << endl;
else
cout << "66-----66" << endl;
if( a < b && b < c && d < c)
cout << "7777" << endl;
else
cout << "77-----77" << endl;
if( !(a == b || c == d))
cout << "8888" << endl;
else
cout << "88-----88" << endl;
return 0;
}
輸出:
6666
77-----77
8888
三、邏輯運(yùn)算符
| 運(yùn)算符 | 描述 |
|---|---|
| && | 稱(chēng)為邏輯與運(yùn)算符。如果兩個(gè)操作數(shù)都 true,則條件為 true。 |
| 丨丨 | 稱(chēng)為邏輯或運(yùn)算符。如果兩個(gè)操作數(shù)中有任意一個(gè) true,則條件為 true。 |
| ! | 稱(chēng)為邏輯非運(yùn)算符。用來(lái)逆轉(zhuǎn)操作數(shù)的邏輯狀態(tài),如果條件為 true 則邏輯非運(yùn)算符將使其為 false。 |
四、位運(yùn)算符
| p | q | p&q | p丨q | p^q |
|---|---|---|---|---|
| 0 | 0 | 0 | 0 | 0 |
| 0 | 1 | 0 | 1 | 1 |
| 1 | 0 | 0 | 1 | 1 |
| 1 | 1 | 1 | 1 | 0 |
- &:表示位與操作
- 丨:表示位或操作
- ^ :表示異或操作
五、賦值運(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)算符 |
六、雜項(xiàng)運(yùn)算符
sizeof-----sizeof 運(yùn)算符返回變量的大小。例如,sizeof(a) 將返回 4,其中 a 是整數(shù)。
Condition ? X : Y-----如果 Condition 為真 ? 則值為 X : 否則值為 Y。
.(點(diǎn))和 ->(箭頭)-----成員運(yùn)算符用于引用類(lèi)、結(jié)構(gòu)和共用體的成員。
Cast-----強(qiáng)制轉(zhuǎn)換運(yùn)算符把一種數(shù)據(jù)類(lèi)型轉(zhuǎn)換為另一種數(shù)據(jù)類(lèi)型。例如,int(2.2000) 將返回 2。
&------指針運(yùn)算符 & 返回變量的地址。例如 &a; 將給出變量的實(shí)際地址。
*------指針運(yùn)算符 * 指向一個(gè)變量。例如,*var; 將指向變量 var。
到此這篇關(guān)于一文詳解C++中運(yùn)算符的使用的文章就介紹到這了,更多相關(guān)C++運(yùn)算符內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
C++數(shù)據(jù)結(jié)構(gòu)之堆詳解
本文詳細(xì)講解了C++數(shù)據(jù)結(jié)構(gòu)之堆,文中通過(guò)示例代碼介紹的非常詳細(xì)。對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2022-04-04
C++實(shí)現(xiàn)LeetCode(47.全排列之二)
這篇文章主要介紹了C++實(shí)現(xiàn)LeetCode(47.全排列之二),本篇文章通過(guò)簡(jiǎn)要的案例,講解了該項(xiàng)技術(shù)的了解與使用,以下就是詳細(xì)內(nèi)容,需要的朋友可以參考下2021-07-07
C/C++中memset,memcpy的使用及fill對(duì)數(shù)組的操作
這篇文章主要介紹了C/C++中memset,memcpy的使用及fill對(duì)數(shù)組的操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2020-12-12
Cocos2d-x UI開(kāi)發(fā)之CCControlSlider控件類(lèi)使用實(shí)例
這篇文章主要介紹了Cocos2d-x UI開(kāi)發(fā)之CCControlSlider控件類(lèi)使用實(shí)例,本文代碼中包含大量注釋講解了CCControlSlider控件類(lèi)的使用,需要的朋友可以參考下2014-09-09
c++?對(duì)象分配在棧上還是在堆上問(wèn)題分析
這篇文章主要為大家介紹了c++?對(duì)象在棧上還是在堆上問(wèn)題分析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-11-11
C++實(shí)現(xiàn)LeetCode(66.加一運(yùn)算)
這篇文章主要介紹了C++實(shí)現(xiàn)LeetCode(66.加一運(yùn)算),本篇文章通過(guò)簡(jiǎn)要的案例,講解了該項(xiàng)技術(shù)的了解與使用,以下就是詳細(xì)內(nèi)容,需要的朋友可以參考下2021-07-07

