1樓:匿名使用者
錯的從右邊往左邊算
先是c=7
b++=c是不對的 要改的話 就是b+=c
2樓:匿名使用者
這太明顯了,肯定是錯抄
的啊。後置++可以看成乙個bai函式
type operator++(int)
返回的不是du引用,所以不zhi是左值。
這個過程也很好的解釋了daoi++和++i的區別。祝好
3樓:匿名使用者
錯。等號的左邊只能是變數,不能是常量或表示式,b++是表示式,所以error .
4樓:匿名使用者
自增運算子優先順序高於+。 先自行b++。是乙個確定的值不能被右賦值
5樓:茅萍杜靜涵
下列符合c語言語法的賦值表示式是a.a=7+b,c=a+7b.a=(7+b,b++,a+7)麻煩解釋下。
6樓:齊乃溫沛白
錯的b++
不是乙個左值
是乙個表示式
(b+1)
c語言中不允許出現這個東西,例如
a+b=c
這個是錯的,a=b+c;這個是對的,
也就是被賦值的左邊是乙個變數。在c語言中沒有這樣(b+1)表示變數吧.
c語言賦值語句"a=(7+b,b++,a+7)"語法錯在**?
7樓:黃邦勇帥哥哥
少個分號也是乙個錯誤,但可能不是
樓主真正想問的錯誤。
依樓主題意,這是乙個賦值專語句,屬既然是賦值語句,那麼也就是說變數a還沒有初始,因此你的這個語句就是錯誤的。解釋如下
a=(7+b,b++,a+7) 假設b是有初值的,因此7+b;和b++都沒有錯誤,但是a是正在被初始化的變數,因此a還沒有初值,因此a+7就是錯誤的,因為a還沒有初值,所以在進行初始化之前不可以進行運算。所以這裡是錯誤的。
8樓:匿名使用者
後面缺少分copy號來結束這個賦值語句bai。
a=(7+b,b++,a+7);
其實這個賦值語句相當du於先後執行以下zhi語句:
7+b; //這個語句無意義
b++;
a=a+7;
也就是將最後dao乙個a+7的值付給a。
因為連續用逗號分割的若干個表示式的值等於最後乙個表示式的值.
9樓:匿名使用者
這是乙個用逗號表示式賦值的語句,表意不明確。
因為c標準並沒有規定逗號表示式的求值順序,所以可能先計算b++,也可能先計算7+b,所以此語句意義是編譯器有關的。
10樓:匿名使用者
他是乙個語句,那麼就該以分號結束(;)
a=(7+b,b++,a+7);
11樓:**
少個;號 這是個語句 語句必須以;號結束
c語言中,是如何賦值的?a=b+c=1為什麼是錯的?
12樓:剛哥不會文明
賦值端左面只能是乙個儲存資料的符號。。你這裡1賦值給b+c,這是不行的。b+c不是乙個儲存資料的符號。
我建議你買本清華大學c++版的工具書,譚浩強出的。。那本書裡比較詳細。
13樓:上虞潘永傑
在c語言中只能給變數賦值,不能給表示式賦值,你這個式子的運算順序是從右到左,1是不能賦值給表示式b+c的
14樓:匿名使用者
a=7+b+c=a+7; //不符合,因來為7是const也就是源常量型別,不可以bai對其賦du值,zhi7+b+c含有常量,對其賦值也是錯誤的
daoc=7+b++=a+7; //同上
a=a+7;//可以
---------------------------------------
b++=7是可以運算的,先賦值b=7,再加1
15樓:蛇的獨孤
因為賦值是賦值給變數的,而b+c不是變數......a=b+c是對的,但是b+c=1是錯誤的
16樓:匿名使用者
vb中賦值的話,應該是"變數=值"的形式,只能是"a=1"
C已知abc的值為1,邏輯表示式0abc
1。因為 0 是48,而 的優先順序比 高,所以原式被解釋為專 0 a b c 3 0 已經屬確定了整個表示式的值為1,所以第乙個 右邊就不計算了,所以a b c的值沒有變化。c 中 已知a,b,c的值分別為2 5 1,邏輯表示式 0 a b c 3 的值是 a,b,c的值分別是 0 a b c 3...
1033c語言的問題,C語言中表示式1033的值是
對呀,確實是這樣的 因為浮點數的精度是這個 1.0是浮點數,精度是小數點後6位。所以1.0 3是0.333333,然後乘以3就是0.999999。這個題目考查的是大家對各種資料型別精度的理解滿意請採納。這個問題是關於不同型別資料間混合運算的問題,由於1.0是浮點型,所以 回在計算時,答1.0,3 被...
c語言中,表示式3552的值相同
x應該是10才對。第乙個式子把5賦值給x 第二個式子3 x 8,當x本身值不變 第三個式子x自身乘2,故此時x 2 5 10。表示式3 5 2和3 5 2的值不相同,3 5 2的值為1,3 5 2的值為0 不是的。3 5 2 15 2 7 3 5 2 0 2 0 3 5 15,15 2 7 3 5 ...