charxabcd和chary12abcd有不同嗎

2021-03-03 21:24:17 字數 2015 閱讀 1599

1樓:匿名使用者

x的大小為5,包括4個字母和字串最後的結束符 '\0'

y的大小為4,包括的只有4個字母

順便說一句,後面的寫錯了,應該是

char y = ;

2樓:記住一座城

x末尾有'\0',y沒有

給出以下定義: char x[]="abcdfeg"; char y[]={'a','b','c','d','e','f','g'};

3樓:匿名使用者

"abcdfeg"是字串,字串是以『\0』結尾的字元陣列,字串的陣列表示是;因此選c

4樓:

a錯誤,因為x是字串,最後有個終止符'\0',而y是字元陣列,沒有終止符'\0';

b正確,長度都為7

c錯誤,同理b

d錯誤,同理b

5樓:輕曳風鈴

c 字串還要加個'\0'

6樓:後知後覺丶飛

b char陣列長度相同

c++中char x[ ]="abcd\0"與char y[ ]{"a","b","c","d","e"} 的區別是什麼?

7樓:鮑口恥握

#include

using namespace std;

int main()

;cout<很容易就看出他們的區別了

x="abcd\0";

包涵了字串結束符\0

其實這裡x="abcd";結果也是一樣的,因為這樣的初始化方式會自動為改字串新增一個字串結束符,也就是\0

可以認為x是一個字串,x是"abcd"的指標和string x="abcd"一樣

y=;(應該是單引號吧,題目貌似給錯了)

這個只是單純的吧'a'賦值給y[0],'b'賦值給y[1]......所以y並不是一個字串,只能叫做一個字元陣列而已用cout是以字串形式輸出,會發生不可知的結果

8樓:

區別就是後者會導致語法錯誤......

char a[]={a,b,c,d}; char a[]="a,b,c,d"; 有區別嗎

9樓:匿名使用者

很大區別,前者a的大小為4,分別是'a','b','c','d'

後者估計你寫錯了吧,應該是 char a = "abcd"; // 這裡a的大小為5個位元組,除了前面4個字母外,還有一個字串結束符 '\0'

10樓:匿名使用者

你的char陣列宣告有問題

你可以這樣

char a=;

char a= "a,b,c,d".tochararray();

如果說區別的話就是針對他們在記憶體中處理時的差異了

11樓:匿名使用者

第一個:a[0]='a' a[1]='b' a[2]='c' a[3]='d' a[4]=0

第二個:a[0]='a' a[1]=',' a[2]='b' a[3]=',' a[4]='c' a[5]=',' a[6]='d' a[7]=0

有陣列char x[]="abcdefg"; char y[]={'a','b','c','d','e','f','g'}; 正確的是

12樓:匿名使用者

c是正確的。

char x="abcdefg"等價於char x=

所以x長度比y多一。

在c語言中char a[]={'a','b','c'}和char a[]="abc"有什麼區別 它們各在記憶體裡佔多少和位元組

13樓:匿名使用者

char a= 這是一個字元陣列,佔3個位元組。 char a="abc" 則不同,它是一個字串,最後還有一個'\0'結束符,佔4個位元組

和圓和是30,和圓和是45,和圓各代表

3個 1個 30,16個 1個 45,版 2用2式減權1式,得 3 15 所以 5 將 5代入1式,3 5 30,30 3 5 30 15 15 即 5,15。下面的每一個圖形都是由 三角形 正方形 圓 構成的。觀察各圖形與它下面的數之間的關係,32外面圖形代表十位數 裡面圖形代表個位數 請問圖中帶...

12和3 5和1 3怎麼通分,5 12和3 5和1 3怎麼通分

5 12 3 5 1 3,它們的分母是12 5 3,這三個數字的最小公倍數是60,所以通分的結果是 25 60 36 60 20 60 因為12是三的倍數,所以12和5,最小公倍數就是12 5 60,這樣變成25 60和36 60和20 60。12 5 3的最小公倍數是 12x5 605 12 25...

飾的拼音和音序和部首和結構和組詞沒有

飾 shi 左右結構 左邊的飠是部首。修飾 裝飾 飾品 牢拼音和音序和部首和結構和組詞?肆的拼音和音序和部首和組詞?肆 漢語拼音是 s 部首檢字法是 聿 部,讀音是 玉 四聲。大肆,放肆,肆意妄為,酒肆,漢字不談啥啥音序!肆 的拼音和部首見下圖 組詞 放肆 恣肆 肆意 肆虐 姿肆 肆欲 肆無忌憚 大...