1樓:博爾思拓
首先你要明白什麼是表示式,還有變數。
a是一個變數。
a++,++a都是a加了1.
比如a原來是1,執行了a++或++a後,a變數的值就是2了
至於a++和++a的區別主要是在表示式上的區別。
++a是先執行了a加1後,參與表示式的計算。
a++是a先參與表示式的計算,後執行自加1.
比如:int a,b;
a=1;//如果你想把a的值1,付給b.那麼,但你又想使得a加1。你就可以這麼做
b=a++;//++在a之後,先把a的值付給b,然後再本身加1 。這時候b=1,a=2了。
//如果你還不懂得話。b=a++;的意思 就是b=a;a=a+1;這兩句意思
//而b=++a 就是 a=a+1;b=a;的意思
至於a++=a+a+1
好像寫錯了吧
是a+=a+a+1
優先順序等於 a=a+(a+a+1)//a+=b 是 a=a+b 的簡化
!= 不等於,是條件運算子,用來判斷真假的。
比如1!=2; 表示式的值就是假,也就是0;
c語言很多式子都是簡化的,這樣雖然可以節省**,卻比較讓人糊塗。
2樓:穰夢菲代欣
1、/代表的是
除法。如果a和
b都是整數,不是
float
等這種浮點數,所以結果只保留整數,所以
a/b算出來是整數。
2、另外,%
代表的是取餘數,即:
5%3等於1餘
2,結果就是2
3樓:匿名使用者
a=b!=0;
左邊第一個等號,是賦值運算;
!=是關係運算,進行「不等於」運算;
關係運算的結果是一個邏輯值,c語言把false轉換成0,把truee轉換成1。
這個語句,先進行判斷b是否「不等於」0,如果b為0,給a賦值0,;如果b不為0,給a賦值1。
4樓:匿名使用者
可以理解為a=(b!=0)
c語言a+=b++==0表示什麼意思
5樓:匿名使用者
首先,b++表示對b做自加運算,我們用c代替,c=b++;
然後,a+=b++ 等於 a+=c,即a=a+c,也就是說「==」之前部分是給a賦值的,我們用d代替,即d=a+c;
最後是一個邏輯判斷d==0,也就是判斷前面計算出來的a是否等於0.
這裡要注意的一個地方是b++,不是++b,也就是說在當前這一次判斷的時候b並不自加,而是在當前判斷執行完之後才自加1.
比如初始a=1, b=2,b沒有自加,a=a+b=1+2=3,那麼這句話這次是在判斷「3==0」,下次再判斷的時候b才自加變成了2,a=a+b=3+2=5,相當於在判斷「5==0」,依次類推即可。
6樓:匿名使用者
符號的優先順序是:
在這個算式中是++最高
++是2級,其次==是7級(先左後右),最後是+=是14級這裡單指加了以後的賦值(先右後左)
然後關於==我做了個小驗證,
#include
int main(void)
結果是a為0,b為3。說明在用==(等於)的時候不像=(賦值)完全改變了賦值物件的值只是單次的改變一次物件的值。
例如你的a=1,b=2
計算順序是先b做自加1操作這時b才變為3,然後做b==0,如上的小驗證,做了這個運算後不會改變b的值(這是b裡面的值還是3)只是在參加運算的時候b單次變為0,,然後做a+=b(這裡的b為0)故這時候a還為1。所以執行這個語句以後a=1,b=3。
以上只是自己個人的觀點,不一定對但還是希望能幫到你。
參考資料字元優先順序表)
7樓:中械
其實是a=a+b++==0的簡寫;從運算子的優先順序可知:++最高,+次之,==再次之,而=最低,即先進行b++運算,在進行a+(b++)運算,其次進行a+(b++)==0運算,最總吧a+(b++)==0的結果賦給a。這個可以程式設計應正。
8樓:匿名使用者
2b表示1234等很多數字。
c語言裡,a/b什麼意思?
9樓:會飛的小兔子
/的意思是除法,a和b是整數,所以a/b算出來是整數。
c語言運算子:
!邏輯非運算子
~按位取反運算子
++自增運算子
--自減運算子
-負號運算子
(型別)型別轉換運算子
*指標運算子
&地址與運算子
sizeof長度運算子
擴充套件資料c語言的特點
1、在標準c語言的文件裡,對操作符的結合性並沒有做出非常清楚的解釋。一個滿分的回答是:它是仲裁者,在幾個操作符具有相同的優先順序時決定先執行哪一個。
2、c語言也將34種運算子規定了不同的結合性。大多數運算子結合方向是「自左至右」,即:先左後右,也叫「左結合性」,例如a-b+c,表示式中有-和+兩種運算子,且優先順序相同。
3、c語言有三類運算子的結合方向是從右至左,也叫「右結合性」,即:單目運算子、條件運算子、以及賦值運算子。
10樓:匿名使用者
1、/ 代表的是 除法。如果 a 和 b 都是整數,不是 float 等這種浮點數,所以結果只保留整數,所以 a/b 算出來是整數。
2、另外,% 代表的是取餘數,即: 5%3 等於 1 餘 2,結果就是 2
11樓:匿名使用者
a/b 代表的是 除法,因為 a 和 b 都是整數,不是 float 等這種浮點數,所以結果只保留整數,所以 a/b 算出來是 1
a%b 代表的是取餘數,即: 5/3 等於 1 餘 2,結果就是 2
12樓:匿名使用者
你好,a/b就是平常的除,只不過是int型的,所以只能取整數部分
13樓:匿名使用者
x=a/b;"/"這個符號是取整的,也就是取商
y=a%b;「%」這個符號是取餘,也就是取餘數的
14樓:匿名使用者
整數除法,只取整數部分的商。
15樓:欲逐風飛掃塵漠
在程式設計裡,/是除以的意思,a/b就是a除以b。
C語言裡x0是什麼意思,C語言中x0是什麼意思
在c語言中 代表等於,而 代表賦值。前者是等於運算子,後者是賦值運算子。x 0用於判斷x是否為0。當x等於0時,該語句為true 當x不等於0,該語句為false。判斷 x是不是等於0 x值為0則表示為1,不為0則表示0.c語言中x 0是什麼意思 x 0在c 語言裡是表示x不等於0的意思,和數學表達...
c語言裡的t是什麼意思C語言C是什麼意思
樓上寫錯了,應該是 轉義字元 而不是 轉移字元 轉義字元是一種特殊的字元常量。轉義字元以反斜線 開頭,後跟一個或幾個字元。轉義字元具有特定的含義,不同於字元原有的意義,故稱 轉義 字元。例如,在前面各例題printf函式的格式串中用到的 n 就是一個轉義字元,其意義是 回車換行 轉義字元主要用來表示...
C語言裡陣列裡的c 0是什麼意思
a 0 表示陣列中的第一個值,可以把它看成一個變數x,a 0 也就是陣列中第一個值 1再存放到原位。比如int a 2 其中a 0 1 a 1 5 a 0 以後,a 0 的值變為2 感覺這個是統計一個陣列中每個數字出現的次數這個是個小技巧而已,呵呵 一個字元回串答中,儲存的是字元型的數字,也就是48...