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 部首檢字法是 聿 部,讀音是 玉 四聲。大肆,放肆,肆意妄為,酒肆,漢字不談啥啥音序!肆 的拼音和部首見下圖 組詞 放肆 恣肆 肆意 肆虐 姿肆 肆欲 肆無忌憚 大...