1樓:陽光上的橋
不要這樣寫,這樣寫了程式不報錯,但是執行的效果不是判斷b在a和c之間,而是把a與b比較的結果(true或者false)與c進行比較。
2樓:匿名使用者
+=是複合運算子。 這句意為b=b+a; 注意+=中間沒有空格
3樓:匿名使用者
首先,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」,依次類推即可。
4樓:董俊錕
這括號裡面是逗號運算子,它的表示式的值是最後一個表示式的值我也可以這樣寫
7+b;
b++;
f=a+7;
5樓:中械
其實是a=a+b++==0的簡寫;從運算子的優先順序可知:++最高,+次之,==再次之,而=最低,即先進行b++運算,在進行a+(b++)運算,其次進行a+(b++)==0運算,最總吧a+(b++)==0的結果賦給a。這個可以程式設計應正。
6樓:匿名使用者
=是c/c 獨有的複合賦值運算子,實際上是一種縮寫形式,使得變數的改變更為簡潔,b =a原式為b=b a。=是賦值不是等於。複合賦值運算子有下列這些:
=加法賦值,-=減法賦值,*=乘法賦值,/=除法賦值,%=模運算賦值,<<=左移賦值,>>=右移賦值,&=位邏輯「與」賦值,|=位邏輯「或」賦值,^=位邏輯異或賦值。b=b a與b =a的區別在於,前表示式a被計算了兩次,後表示式a僅計算了一次,這對於程式執行無多大影響,但使用普通賦值運算子,當表示式作為函式的返回值時,函式就會被呼叫兩次,會加大程式的開銷,使效率降低。
7樓:
b+=a;相當於b=b+a;
( i++ )=( i+=1 ) =(i = i + 1)
8樓:匿名使用者
b+=a;相當於b=b+a;
9樓:匿名使用者
這個是加賦值:b=b+a.
10樓:匿名使用者
b = b + a;
11樓:匿名使用者
首先你要明白什麼是表示式,還有變數。
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語言很多式子都是簡化的,這樣雖然可以節省**,卻比較讓人糊塗。
12樓:匿名使用者
a++就是運算後+1,在表示式裡面的時候還是a而++a就是先a+1然後代入表示式計算。
!=是不等於的意思
在c語言中「a^b」是什麼意思?
13樓:匿名使用者
a 異或 b
按位異或
比如 a 為 5 --- 0101
b 為 7 ----0111
______________
0010
對應位相同為0, 不同為1
希望對你有幫助。謝謝
c語言中:a+++b是什麼意思?
14樓:湛藍水晶
就近原則,與編譯器無關,很容易記的。
相當於(a++)+b;
但是太多+號就不行了,
比如a+++++b,雖然一看就知道意思是(a++)+(++b);但是編譯就通不過,出錯資訊大概是:迷失在加號空間?
15樓:幸巴達
呵呵,不用管,結果是一樣的
都等於a+b
#include "stdafx.h"
#include "stdio.h"
int main(int argc, char* argv)結果 a=2,b=2,c=3
16樓:匿名使用者
是(a++)+b如果是a+(++b)的話答案應該是4,前者答案才是3
17樓:天曼安周聖
這是(a%b)?b:a
其中a%b
是a除以b取餘數,
若不等於0
(也就是b不整除a)就當成立,
整個式子是取b的值.
若等於0
(也就是b整除a)就當不成立,
整個式子是取a的值.
c語言中語句a+=b++是什麼意思
18樓:匿名使用者
先解釋一下 += 和 ++ 是
什麼意思+= 的意思是 左值和右值相加結果賦值給左值如 a=1;b=2;a+=b;後,a=3;b=2。++ 的意思是變數自加1,如a=1;a++;a的值是2,在c中,++有前置和後置如 ++a;a++;,單獨使用的時候是沒有區別的,都是自加1,在有運算時就有區別了,前置的++是自加後才參與運算,後置的++是參與運算後在自加1。如題的畫,假定a=1,b=2,a+=b++的意思就是b=2先參與a+=b運算a=3,然後b自加1,b=3;如果b++換成前置++b,a+=++b就是b先自加1,b=4,然後參與a+=b運算,a=4。
19樓:白蘿蔔
a+=b++要先進行a+=b的運算,然後再進行b的自運算舉例a=1,b=2,則a+=b++,有a=a+b=1+2=3,b=b+1=3.
20樓:匿名使用者
a+=b++的意思是a=a+b,然後b=b+1,就是這樣,你應該是初學c吧!!
21樓:匿名使用者
a+=b++等價於a=a+(b++) 運算時,先計算括號裡面的b++即可。 有疑問提出。 望採納
22樓:哀韶蕭貝晨
要說在c語言中這充其量只能算作是「偽**」。
在vb、pascal等程式設計語言中,<>是「不等於」的意思。
在c中,「不等於」的關係應表示為「!=」
if(a
!=b+c)
printf("a不等於b+c\n");
else
printf("a等於b+c\n");
c語言中a!=b 什麼意思呢
23樓:匿名使用者
這個叫三目運算式.標準格式是如下
num=a>b?x:y; 簡單解決.a>b是一個表示式,如果這個表示式成立.也就是返回是真的.那麼就將冒號前面的x交給num,否則就把y交給num.
意思就是說.問號前面的關係表示式如果為真就取冒號前面的變數,如果為假就取後面的,當然這裡的表示式也可以為其它型別.比如
num='\0'?x:y;這樣也是可以的.'\0'返回是0也就是假,所以最後num=y;
你這個表示式,我想不用我再告訴你是什麼意思了吧?
我又回來補充了.a*=如果你是問這個是什麼意思,這個是乘等的意思,比如a*=i;意思就是a=a*i;
你的這個表示式答案我給你寫最下面,你行自己用我說的理解一下,看對不.
t=a*=a>b?a:b的意思就是,先比較a和b如果a大於b那麼就取a的值,否則取b的值,然後將取出來的值與a相乘,最後再賦給a然後再賦給t
24樓:匿名使用者
a=b!=0;
左邊第一個等號,是賦值運算;
!=是關係運算,進行「不等於」運算;
關係運算的結果是一個邏輯值,c語言把false轉換成0,把truee轉換成1。
這個語句,先進行判斷b是否「不等於」0,如果b為0,給a賦值0,;如果b不為0,給a賦值1。
25樓:匿名使用者
!b在c語言中表示不等於,你這句意思就是說「a != b ,a 不等於 b」就是一個運算子,和加減乘除一樣,只不過在c語言中不等於號表示為這個「!
=」等於號是這個「==」,希望能對你有所幫助。
26樓:匿名使用者
(a-b)條件成立(a-b不等於0則成立),則等於a ,反之等於 b
三目運算子
《表示式1>?《表示式2>:《表示式3>; "?
"運算子的含義是: 先求表示式1的值, 如果為真, 則執行表示式2,並返回表示式2的結果 ; 如果表示式1的值為假, 則執行表示式3 ,並返回表示式3的結果。
27樓:匿名使用者
一般做一個條件
例如if(a!=b )
結果wei真和假
如果a、b不相等,結果真【真用1表示】
如果a=b,則結果假【假用0表示】
28樓:戀戀土豆絲
首先,你要知道==操作符
的優先性是比=高的。
所以a=b==c,先運算b==c,這個表示式的含義是,若b與c相等,那麼得出的值為1,若不等則為0.而根據你的定義,b=2,c=3,顯然兩個數不等,所以a=0.
29樓:天雨下凡
x=(x,b,c);就是把變數c的值賦給變數x
(x,b,c)是逗號表示式,值是最右邊的值,即c的值。
30樓:匿名使用者
說明b是一個指標變數,其定義應該是這樣:int *b,a;
*是取值運算子,*b就是取b指向儲存空間的值;
&是取地址運算子,&a表示取變數a的地址。
*運算子後面應該跟指標;而&後面應該跟變數名(或陣列元素,或結構體變數.成員名)。
31樓:匿名使用者
int a=04,b; a是八進位制數,把a的值轉換成二進位制為:100,補齊8位則是0000 0100
b=a<<1
把a的二進位制形式左移1位,最右邊補1個0
則結果為: 0000 1000
所以b的二進位制形式是:0000 1000
把b轉換成十進位制 則是8
32樓:秋楓
*b=&a這種寫法只有在定義時這麼寫才對,例如 int *b;*b=&a;是錯誤的,正確的是int a=1;int *b=&a;意思是說定義一個指標b,b裡存的是a這個變數的地址。如果定義好了一個這真b,那麼*b就指b這個變數裡存的地址裡的值(有點繞口,慢慢理解),&為取地址符,&a就是a這個變數的地址。
33樓:匿名使用者
朋友,>是比較運算子,!=是邏輯運算子!其優先順序低於比較運算子所以先判斷a>b是否成立,如果成立,則a>b 整體就為1,不成立則為0,
然後判斷a>b 整體是否等於c,如果不等於a>b!=c這個式子整體為1,
如果等於c,則a>b!=c
這個式子整體為0.應該是用來判斷c的值是1或是0的
34樓:
先判斷k是否小於a,如果是,k的值不變,否則k的值為c然後判斷k是否小於b,如果是,k的值為c,否則k的值為a整個相當於k取a,b,c中的最小值
。。。。。。。。。。。。。。。。。。。。。。。。
算了,感覺條件不足。
C語言中a 2是什麼意思,在C語言中b a 2 是什麼意思?
a 表示a自增1,就是bai給a 1然後du賦值給a,zhi相當於daoa a 1。在c c 等高階語言中,是自增運算子,它有版兩種用法 1 i 使用權i之前先使i加一 2 i 使用i之後再加一。擴充套件資料 程式例項 include using namespace std int main 執行結...
c語言中extern是什麼意思,在C語言中標頭檔案的extern是什麼意思呢?
extern 宣告的函式是在外部定義的函式例項,最常見的就是通過extern定義在win32 dll定義的非託管函式。就是全域性變數的意思,在建立工程的情況下,其他檔案也可以呼叫這個變數。用了extern,就表示這個變數是全域性的和動態的,不存在使用哪一個的問題.比如3號檔案的int a變成289了...
c語言中的,c語言中 是什麼意思
c語言中的 是邏輯運算中的非運算。是c語言中的非運算子,在變數前面使用它,會構建非運算表示式,表示式的返回結果是個布林值 也就是隻有true或false 對變數使用時,如果變數不是布林資料型別,將會強制轉化為布林型別再使用,如整形變數123將被轉化為true,整形變數0將被轉化為false。擴充套件...