c語言的a和a有什麼區別,C語言中a與a的區別是什麼詳細一點,謝謝

2021-03-04 09:23:58 字數 6185 閱讀 1750

1樓:勞夏青悉能

如果要列印的值

來是a++

如printf("%d",a++);

那打源印出來的只是a的值bai.

但是第二次打du

印的a值就

zhi是++後的值.

就是先打dao印後++;

++a就是先改變a的值,再列印出來.

具體差別你可以自己試著執行比較一下.

c語言中a++與++a的區別是什麼?詳細一點,謝謝!

2樓:匿名使用者

a++ 是先返回a的值,再執行++運算。

++a 是先執行++運算,在返回a的值。

例如:#include

int main()

3樓:睢辰丁逸秀

a=7a++

先使用a的值,a在自增

++a先自增在使用a的值

b=a++

;//b=7

c=++a;//c=8

4樓:疲憊的龜

a++代表先取值,後運算。

++a代表先運算,後取值。

a=1;

如b = a++;

得b = 1

若b = ++a;

得b = 2

5樓:匿名使用者

一個用了再加1,一個先加一再用

c語言中 a++和++a的具體區別是什麼

6樓:噓

a++是首先拷貝自bai己的副本,然後對真值du加一。

++a是對zhi真值加一,然後使dao用真值。

例子:版

int a=0, b, c;

b = a++;

c = ++a;

printf("b=%d, c=%d", b, c);

上述程式權

段執行結果為b=0,c=2,可以證明理論。而a++和++a本身在單獨使用時,與a=a+1是等價的。

7樓:匿名使用者

作為單bai獨的語句,a++;與++a;並沒什du麼區別zhi

但是b = a++;和b = ++a就有區別了,a++這個式子的dao返回值回是a,所以答b = a++相當於b = a,然後a = a+1;

++a的返回值是a+1;所以b = ++a相當於a = a+1;然後b = a;

8樓:匿名使用者

例子:int a=0; if(a++) if(++a)

9樓:匿名使用者

a++ 先返回a,再自加

++a 先自加,再返回a

如a=3

b=a++;//b=3

c=++a;//c=5

c語言b=a++和b=(a++)的區別

10樓:哇哎西西

c語言b=a++和b=(a++)沒有區別。

這個和()沒什麼關係,注意理解a++和++a的區別:

a++: 先將a的值代入表示式,在表示式運算完畢後,再將a進行++處理。

++a: 先將a進行++處理,再將a的值代入表示式。

注意對於a++這裡有一個「在表示式運算完畢後,再將a進行++處理」。

b=(a++); 這是一個賦值表示式,

所以先將a的值代入表示式,必須等到賦值表示式運算完畢後,再將a進行++處理。

也就是說必須等到給b賦值完畢後,才將a進行++處理。

所以b=3,a=4

11樓:匿名使用者

這個和()沒什麼關係,我詳細的講一下,你一定要看完啊:)注意理解a++和++a的區別:

a++: 先將a的值代入表示式,在表示式運算完畢後,再將a進行++處理

++a: 先將a進行++處理,再將a的值代入表示式注意對於a++這裡有一個「在表示式運算完畢後,再將a進行++處理」,b=(a++); 這是一個賦值表示式,

所以先將a的值代入表示式,必須等到賦值表示式運算完畢後,再將a進行++處理,

也就是說必須等到給b賦值完畢後,才將a進行++處理所以b=3,a=4

c語言程式設計語句中的a++和++a有什麼區別,能舉個簡單例子嗎?

12樓:匿名使用者

a++是使用的

復a後,再對制a進行加1,a++是先賦值再自增.

++a是先把a加1,然後再使用a,++a是先自增在賦值。

#include

void main()

13樓:萢萢

a++是使用的a後,再對a進行加1。

++a是先把a加1,然後再使用a。版

如:int a=1;

printf("%d ", a++);

printf("%d", a);

輸出的權是1 2。

printf("%d ", ++a);

printf("%d", a);

輸出的是2 2。

14樓:ghoul荷蘭人

當 c=a++時,c是先被a賦值,再進行a=a+1

當c=++a時,先進行a=a+1,c再被a賦值

15樓:匿名使用者

a = 1;

b = a++; //b = 1 , a = 2c = ++a; //c = 3 , a = 3a++ 是先用a,在自加

++a 是先自加,在使用

c語言中*a++和(*a)++有什麼不同?

16樓:茆德悟旻

也不算很難理解啊

說的通俗點

a++就是先把a當前的值

進行輸出或運算啥的

然後a在自增1

就是加1

++a也就先把a當前的值自增1

然後在輸出或運算啥的

好比a的值是1

b=++a

先把a當前的值1

自增1然後運算就是賦值給b

所以b=2

a=2b=a++

先把a當前的值1運算

就是賦值給b

所以b=1

然後a在自增1所以a=2

++--是1元運算副

具有右綜合性

優先順序高過

邏輯算術

賦值關係等這些運算副

17樓:度浩麗局妙

1,表示式的

值不同,++a的值是原a的值加1,a++是原a值例1int

a=1,

b;b=++a;

printf("%d",b);

例2int

a=1,

b;b=a++;

printf("%d",b);

2,++a可以做左值,a++不可以

例1int

a=1,

b=5;

++a=b;

printf("%d",a);

例2int

a=1,

b=5;

a++=b;/*這裡是個編譯錯誤*/

printf("%d",a);

18樓:閩恨甲瑾

hahugo88的回答很正確,這個意義必須掌握好哦!

我就是因為這個概念模糊考試丟了10分

19樓:匿名使用者

*** = *a++等價於 *** =*a;a++;指標移了一位*** = (*a)++等價於*** =*a;(*a)= (*a)+1;指標沒有移位,內容加1了。

20樓:澤男君

作為單獨的語句,a++;與++a;並沒什麼區別

但是b = a++;和b = ++a就有區別了

a++這個式子的返

回值是a,所以b = a++相當於b = a,然後a = a+1;

++a的返回值是a+1;所以b = ++a相當於a = a+1;然後b = a;

c語言是一門通用計算機程式語言,應用廣泛。c語言的設計目標是提供一種能以簡易的方式編譯、處理低階儲存器、產生少量的機器碼以及不需要任何執行環境支援便能執行的程式語言。

儘管c語言提供了許多低階處理的功能,但仍然保持著良好跨平臺的特性,以一個標準規格寫出的c語言程式可在許多電腦平臺上進行編譯,甚至包含一些嵌入式處理器(微控制器或稱mcu)以及超級電腦等作業平臺。

二十世紀八十年代,為了避免各開發廠商用的c語言語法產生差異,由美國國家標準局為c語言訂定了一套完整的國際標準語法,稱為ansi c,作為c語言最初的標準。

21樓:夜神月

優先順序 () > ++ > *

*a++ 先執行++ 再執行 * 即指標先移動一個位置,在對移動後指標所指位置解引用取值。

(*a)++ 先執行*a 再執行++ 即先對指標所指位置解引用取值,再對這個值自增加1.

22樓:滄海雄風

*a++ 和(*a)++

區別 一個是 指標後移 一個是指標指向的內容自加舉例int *a, b[2]=,c;

a = b;

c=*a++ 那麼 a 指向1 則c等於2c=(*a)++ 那麼 c 等於2

過程不一樣而已

舉例子 一個是別人讓你移動一格

一個是你自己移動一格

23樓:

優先順序的關係自增的級別要高

c語言中'a'和"a"有什麼區別?

24樓:哇哎西西

1、本質區別

雙引號裡面的是字串, 而單引號裡面的代表字元。

2、輸出區別

str = 「a」輸出的就是a這個字母;

str = 『a』輸出的測試65

3、底層區別

用單引號引起的一個字元實際上代表一個整數,整數值對應於該字元在編譯器採用的字符集中的序列值。

25樓:高金山

'a'是一個字元,"a"是兩個字元,'a'和'\0'

比如,下面這個例子:

char a1[1]=;

char a2[1]=;

前者a1[0]='a',能編譯通過

後者編譯通不過,因為a2是一個元素的陣列,而"a"有兩個元素,分別是'a'和'\0'

補充:'aa'這是錯誤的寫法,單引號是字元的引號,它只能引一個字元的"aa"這是正確的寫法,雙引號是字串的引號,它有三個字元:'a','a','\0'

26樓:周肆爻

定界符不同,字元常量用的是單直撇,字串常量則用雙引號長度也不同,字元常量只能有一個字元,也就是說字元常量長度為一,而字串常量可為0,也可為任意數。即使字串常量字元數量為一,長度也不是一。

例如,字串常量"h"(這手機沒雙引號)

則長度為2,字元就是h \0

27樓:匿名使用者

在 c 語言中,

1.單引號是字元的意思:『a』,a就是一個字元;

2.雙引號就是 字串的意思:」abd「就是一個字串。

28樓:匿名使用者

'a'是字元,在記憶體中表示為0x61,儲存空間為1個位元組

"a"是字串,在記憶體中表示為 0x61 0x00 ,儲存空間為2個位元組

29樓:匿名使用者

樓上的回答很好!!!

對於字元和字串沒什麼好解釋的!!!

建議採納樓上的回答.

另外,回去多看看書,多練習!!!

30樓:摘一把青梅煮酒

字串有結束符 \0

c語言中,a==b與b==a有什麼區別麼?

31樓:匿名使用者

沒區別,==是恆等於,不存在賦值問題,單純比較,怎麼寫都行,但是=號就不一樣了,是右邊賦值給左邊

32樓:育知同創教育

寫法幾乎沒有什麼區別。前後順序不影響的。

33樓:匿名使用者

雙等號 是比較運算子, 沒有什麼區別

34樓:幻世封神

沒什麼區別,看個人習慣了

請採納吧

35樓:研凌工控電腦

無區別,這和只有一個=號不同

c語言與易語言什麼區別,C語言與易語言什麼區別

簡單說 易語言是中文 好學 c是英文 不會英語的人很難學 希望採納!什麼是易語言?它和vb c語言 c 等有什麼區別和相同點?答 易語言是中國人自己開發的一種程式語言,是一款全中文程式 的程式語言,和vb c語言 c c 等都屬於同一性質,都是用來開發程式和編寫軟體用的。易語言的核心由c 編寫而成,...

C語言程式設計,C語言和C語言的區別是什麼?

include using namespace std int main if a max x max y 值 int main system pause return 0 c語言和c 語言的區別是什麼?c語言與c 的區別有很多 1,全新的程式程式思維,c語言是程序導向的,而c 是物件導向的。2,c...

C語言J 和 J又什麼區別

當單獨一bai個語句的時候沒du有區別,如果用在表示式中 zhij 是先dao 取j的值做計專算,再自加 j是先自加,再取屬j的值做計算。比如int j 2,k 如果k j 那麼先取j的值賦值給k,於是k值為2,j值再自加,j 3。如果k j 那麼j先自加,得到j 3,然後再取j值計算,k值為3.比...