1樓:月光疾風
一直以來,++ --語法浪費了太多人的時間。說句實在話,++ -- 在c語言中其實是乙個很細節的語法,除了表達簡練外,真的沒有什麼其它的好處了。
由於中國的c語言教程長期以來被譚浩強主宰,而譚又錯誤的把++ --作為乙個c語言重點來教,並增加了一些難點,把本來很簡單的語法,搞得複雜無比!
簡單的來說,++i 和 i++,在單獨使用時,就是 i=i+1。
而 a = ++i,相當於 i=i+1; a = i;
而 a = i++,相當於 a = i; i=i+1;
如果實在搞不明白++ --怎麼回事,那也不是什麼天塌下來的事。
因為a=++i完全可以寫成 i++; a=i。
a=i++完全可以寫成 a=i; i++。
而且,這也是一種好的程式風格:++ -- 語句如非特殊需要,請單獨一行使用。
2樓:流瓶
沒乙個看懂提問者的意思,他是問根據運算子的優先順序,++優先與賦值號=,應該是先i++再賦值給a,而實際是先賦值a=i,再i++,這違背了運算子的優先順序,我也想問這個問題的。要是就是書中說的運算優先順序說的不嚴謹還是其他什麼原因。
3樓:song宋
會先對a進行賦值,然後i再自增
因為上述語句造價於:a=i;i++;
4樓:廿四點半
孩子,加加減減運算子是每個初學者都會遇到的難題。
++i和i++是有區別的。隨便舉個例子:int b, a = 1; b = a++; 這裡 如果printf b的話,是1,執行完 b = a++這一句之後a才變成2;如果是++i就是b等於2,a也等於2.
這回你懂了吧。滿意請採納,謝謝
c語言中&a[i]什麼意思
5樓:聽不清啊
c語言中&a[i]就是取陣列元素a[i]的位址。
可以用在scanf("%d",&a[i]);
或為同型別的指標賦值時:
p=&a[i]; (當然,這也可以用p=a+i;來實現)
6樓:匿名使用者
取陣列a中第i+1個元素的位址
如語句for(i=0;i scanf("%d",&a[i]); 表示用鍵盤輸入,給陣列a賦值 7樓:匿名使用者 &為取位址符,&a就是a這個變數的位址 =0;a〔i〕!=′\0′;i++ 一般在for語句中出現 i=0是為迴圈變數i賦初值 a(i)!='\0'是迴圈持續條件 i++是迴圈變數每次的變化,這裡是每次遞增1其中a(i)!='\0'表示a(i)不是截止符在c中,字串之後都會跟隨乙個'\0'字元,表示字串終止 8樓:匿名使用者 a[i] 表示陣列a中的下標為i的陣列物件的值。&a[i]表示的a[i]這個陣列物件在計算機記憶體裡的位置。 9樓:運偲戢賓實 將a邏輯取反後賦值給i。 例如a為非0(例如9),則i為0(假), 如果a=0,則i=1. 10樓:篤勳盈高旻 (a+k)與(i+k)是用圓括號括起來的,判斷(a+k)與(i+k)的大小;(a+k)<=(i+k)正確i=1,錯誤i=0。 c語言常用運算子的優先順序口訣是:「單算關邏條賦逗」; 如果加入位運算子,完整口訣是:「單算移關與,異或邏條賦」。 「單」表示單目運算子:邏輯非(!),按位取反(~),自增(++),自減(--),取位址(&),取值(*); 「算」表示算術運算子:乘、除和求餘(*,/,%)級別高於加減(+,-); 「移」表示按位左移(<<)和位右移(>>); 「關」表示關係運算子:大小關係(>,>=,<,<=)級別高於相等不相等關係(==,!=); 「與」表示按位與(&); 「異」表示按位異或(^); 「或」表示按位或(|); 「邏」表示邏輯運算子:邏輯與(&&)級別高於邏輯或(||); 「條」表示條件運算子(? :);「賦」表示賦值運算子(=,+=,-=,*=,/=,%=,>>=,<<=,&=,^=, |=,!=); 這只是乙個簡單記法,沒必要刻意去記。 11樓:麼雅藍問芙 這裡考了乙個 運算級優先的問題,你說的這個我們首先肯定的一點是++自增運算子肯定比=這個賦值運算子的運算級要高的所以要先執行a[i]++然後再把a[i]++的指賦給a[i],這裡需要注意的一點就是a[i]++是指a[i]的數值加一,跟後面要學習到的p++(這裡的p指的是指標)是不一樣,那給你舉個例子吧,像你這道題 我們假設a[i]=5,那最後a[i]還是等於5,但是運算完了以後的a[i]確等於6,反正這裡還設計到乙個a[i]++和++a[i]的運算先後關係,你還是先看看書好了 這個也是蠻簡單的 希望我的解釋對你有幫助。~ 12樓:悉鑫善廣 !是邏輯運算子,邏輯上只有0與1,在c語言中不是0的值都看成邏輯1,所以當a=0時,!a 的值是1,當a不等於0時,!a為0 小夏在深圳 賦值的語法規則就是 資料型別 變數名 表示式 表示式可以理解為一個值或一個計算公式就行,表示式加一個英文符號分號就是語句。例如 我們今天要用到的,我買了幾斤蘋果。就可以這樣寫 方式一 方式二 擴充套件資料1 c語言中,賦值運算的操作是有方向的,即將右側表示式的值 也稱為右值 賦值左側的變... temp 是自己定義的。常常定義為起臨時作用的變數。比如有a,b兩個變數,現在交換他們的值,就再定義個temptemp a a bb temp 這樣就實現了交換兩個值。 一般只是用來定義區域性變數的,由於臨時使用,所以名字取的有點隨意. 天雲一號 在c語言中,temp沒有特別的含義,既不是關鍵字也不... 這表示的是字元陣列,128是字元陣列長 不是字串長 char str 456 也是可以的。其中每個成員的值在 128 127之間,str 0 str 455 每個值不能超過127.如果超過,則擷取低位位元組存貯。題目裡是統計輸入字串中小寫英文字母個數,開頭用的就是這個。這個就好理解了。ascii 就...c語言中賦值語句的語法是怎樣的,C語言中賦值語句的語法是怎樣的
c語言中temp是什麼,C語言中temp是什麼
c語言中char str括號裡為什麼是