逗號運算符
int i;
int a = 1;
int b = 2;
int c = 3;
i = (a = a + b, b = b + c, c = c + a);
則 i = 6(等于最后一個表達(dá)式的值)
算數(shù)運算符
- 優(yōu)先級與數(shù)學(xué)中相應(yīng)的優(yōu)先級一致
- 兩個整數(shù)相除 結(jié)果取商的整數(shù)部分 若其中之一為浮點數(shù) 則進(jìn)行通常意義上的除法
- % 為取余計算符 要求##兩個操作數(shù)必須為整數(shù)或者字符型數(shù)##
浮點數(shù)大小比較
float a,b;
a == b;
a != b;
浮點數(shù)在計算機(jī)中是近似等于一個數(shù) 因此 該用如下寫法
float a,b;
fabs(a - b) < 1e - 6;
fabs(a - b) > 1e - 6;
邏輯運算符
- 任何非0值都表示true
- 在進(jìn)行邏輯表達(dá)式運算時 從左向右掃描 一旦某部分的值能夠確定整個表達(dá)式的值 則不再進(jìn)行計算 稱為“短路”
如
#include <iostream>
using namespace std;
int main()
{
int i = 1, j = 2, k = 3, x = 345;
cout<<((k = i >j ) && ++x)<<endl;
return 0;
}
則整個表達(dá)式的值為0 但是x的值仍為345 沒有加1