chara1000和chara0有什麼區別

2021-03-04 06:08:14 字數 1861 閱讀 7615

1樓:小傻

char a[100] = ;和char a = 區別如下:

第乙個是 100個位元組 全部初始化為\0 ,這個是先給出大小才初始化第二個是就乙個位元組 初始化為\0, 這個是賦值初始化 賦的值決定了大小

分配的記憶體位址空間也不一樣,如下:

2樓:滄海雄風

第乙個是 100個位元組 全部初始化為\0 這個是先給出大小才初始化

第二個是就乙個位元組 初始化為\0 這個是賦值初始化 賦的值決定了大小

3樓:匿名使用者

char a[100] = ;a分配了100個位元組的空間,但只有乙個\0

和char a = ;a分配了1個位元組記憶體空間,裝著\0

c++裡char a='0';和char a=0;有什麼區別??

4樓:小傻

char a[100] = ;和char a = 區別如下:

第乙個是 100個位元組 全部初始化為\0 ,這個是先給出大小才初始化第二個是就乙個位元組 初始化為\0, 這個是賦值初始化 賦的值決定了大小

分配的記憶體位址空間也不一樣,如下:

5樓:匿名使用者

第乙個是指字元a賦值字元型『0』,第二個指字元a賦值ascii值為0的字元也就是空字元(空格)。

6樓:百度使用者

c++裡面初始化乙個字元必須打上單引號 也就是類似於第乙個 char a='x';。第2個是不正確的。

c++裡char a='0';和char a=0;有什麼區別?

7樓:匿名使用者

c++裡面初始化乙個字元必須打上單引號 也就是類似於第乙個 char a='x';。第2個是不正確的。

char *a和char* a有什麼區別?

8樓:匿名使用者

沒有什麼不同,都是定義乙個指向char型的指標但是要注意的是如果你想在一句話裡面2個指標,那麼正確的做法應該是char *a,*b;而不是char* a,b;

後面那個b只是乙個char型變數

所以一般提倡使用第一種,避免糊塗搞錯,當然如果你僅僅在一句話裡面定義乙個變數或者是在定義形參的話,那麼第二種看上去更直接一點

希望對你有幫助

char **str和char *str[]有什麼區別?

9樓:匿名使用者

**str右邊的*表示

來指向每乙個字串第一自個字元的bai位址,du左邊的*表示指向第乙個字串的zhi位址。

const char **str 或 char const **str可以定義dao,const不區分前後順序,意義都是表示str是常量(不能賦值)。

只能定義char *str[5]而不能定義char *str,因為編譯時程式不能確定str陣列有幾維。

char *str[5]表示字串陣列,陣列數量是5,既是5個string又是乙個string array,每個string不限字元個數。

10樓:千鋒教育

兩者都代復表乙個字元陣列儲存制

空間的首位址,bai區別在於du

char *str;

這個變數可以進zhi行指標運算,比如:daostr++;

str--;

但如果定義成:

char str;

則str++這樣的語句是錯誤的,這個首位址不得進行賦值計算。

在不改變str指標指向位址的情況下,下面的語句是一樣的結果。

printf("%s",str+2);

chara和chara的問題

不是一種變數。對於指標來說,陣列是個土豪。陣列表示了所有陣列元素的集合,也就是說a表示整個陣列。而指標呢,真是個屌絲,他只有四個位元組的大小,就好比屌絲指著大街上的豪車說,這是我的,那是我的。但是卻不是他自己的。另一種情況除外。那就是做形參時。陣列土豪會被打,他的田地會被分。他會淪落成乙個貧下中農。...

char a在c 中應該怎麼表示

因為像 等等字元在程式中有特別的用途,所以為了正常使用它,就需要複雜一點的表示了,此時c中用 來引起一個表示式就是了。後邊的表示式有幾種,一種就是引起 等然後就是引起一個8進位制表示式如 054,其中0必須有,表示8進位制或者一個十六進位制的表示式 x9f,其中x表示十六進位制,同樣不可省略這種情況...

在c 中,Char a 10abcd」Cout《a《endl為何輸出的是abcd

本來這個問題並不複雜,但是由於題主個別概念有些問題,所以還是深入回答一下。a本身的值確實只是乙個const char 型別的位址。但c 中cout是被定義好的乙個類的物件,它和運算子 連用時 發生過載,語義被解釋為輸出 右端指示的字串。具體是通過運算子過載實現,類似於呼叫函式,只是右運算元作為位址被...