chara和chara的問題

2021-03-04 06:12:56 字數 3695 閱讀 8260

1樓:匿名使用者

不是一種變數。對於指標來說,陣列是個土豪。

陣列表示了所有陣列元素的集合,也就是說a表示整個陣列。

而指標呢,真是個屌絲,他只有四個位元組的大小,就好比屌絲指著大街上的豪車說,這是我的,那是我的。但是卻不是他自己的。

另一種情況除外。那就是做形參時。

陣列土豪會被打,他的田地會被分。

他會淪落成乙個貧下中農。

不信可以在子函式中sizeof一下

2樓:月亮上的風

如果實在定義變數的時候,前乙個是陣列,後乙個是指標。

如果是某函式的引數裡寫的,那麼其實都一樣,前者是陣列,實質也就是指向陣列頭的指標,後者就是指標。

3樓:匿名使用者

乙個是陣列 乙個是指標

c語言,char a;和char a[1];有什麼區別

4樓:匿名使用者

char a 表示 定義了乙個變數,名叫a, 它是字元型別(佔用記憶體的乙個位元組)

char a[1] 表示 定義了乙個陣列,名叫a, 它是乙個包含乙個字元型別資料的陣列,這個陣列只能存放1個字元型別的資料。

兩者在不接觸指標做函式引數的程式的時候功能是一樣的。

5樓:萢萢

char a是字元,char a[1]是字元陣列。

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

6樓:匿名使用者

沒有什麼不同,都

是定義乙個指向char型的指標

但是要注意的是如果你想在一句話裡面2個指標,那麼正確的做法應該是char *a,*b;而不是char* a,b;

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

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

希望對你有幫助

7樓:匿名使用者

作用是一樣的,區別是風格問題。寫**多的人都有自己的風格,特別是大公司,要求風格統一,所以我們看到一段**風格與其他的不同時可以斷定,這段是copy的

8樓:匿名使用者

沒有區別,完全一樣。

9樓:冰戟玉語

c語言裡有char* a這種格式啊,沒見過,我只知道char *a表示定義了乙個字元陣列。

c++ 語言中char a="a"; 和char a='a' 有什麼區別

10樓:匿名使用者

char a='a' 是合法的

char a="a' 是不合法的

char型不能為字串,只能為字元

11樓:匿名使用者

「a」表示字串,字串長度等於內容加『\0』的長度,所以是佔用兩個位元組記憶體。『a』表示字元,佔用乙個位元組記憶體。而乙個字元變數長度永遠為1位元組,所以前者寫法錯誤,應該寫成 char *a = "a"。

12樓:匿名使用者

前面是錯的。「a」為const char *, 「a」= 『a'+ '\0'。

char* 和char的區別

13樓:

char a 表示 定義了乙個bai變數,名叫a, 它是字元du型別(佔用內zhi存的乙個位元組

dao)char a[1] 表示 定義了乙個數內組,名叫a, 它是乙個包含

容乙個字元型別資料的陣列,這個陣列只能存放1個字元型別的資料。兩者在不接觸指標做函式引數的程式的時候功能是一樣的。

14樓:育知同創教育

char* c與char *c 沒有任何區別

char* c和char c 有區別,char c是乙個字元,char* c是char指標,他可以帶表乙個字串引用。

char a='1',char a=1有什麼區別?

15樓:海天盛筵

chara='1',chara=1唯一的區別是:

chara='1'表示字元'1'被賦值給a。

chara=1表示將ascii碼為1的字元賦給a。

字元型別可以在ascii值和字母之間自動轉換;在編寫chara=5時,ascii值為5的符號是類似於梅花的符號,而ascii=0的符號是空字元。

例:char型別是字元型別,賦值的話可以直接字元賦值:charc='a';

當然也可以用字元對應的ascii碼賦值:charc=97;

擴充套件資料:常用的賦值語句格式:

1.單輪='權重1';

2.多個字元chara[5]="1133";

3.char*str="12312";

4.char*str=newchar[10]。strcpy(str,「1233」);

5.chara="1132131233"

6.char*str=newchar[10]。str="2131"

16樓:

char a='1',char a=1二者唯一的區別是:

char a='1' 表示'1'這個字元賦值給a;char a=1表示ascii碼等於1的字元賦值給a。

char型別可以自動在ascii值和字母之間轉換;當寫 char a =5 時,  ascii值為5的符號是乙個類似梅花的符號,ascii=0的是符號是空字元。

例:char型別是字元型別,賦值的話可以直接字元賦值。

char c = 'a';

當然也可以用字元對應的ascii碼賦值

char c = 97;

擴充套件資料

常用賦值語句格式:

1、單字元char a=』1』;

2、多字元char a[5]=」1133」;

3、char* str = 「12312」;

4、char* str = new char[10];strcpy(str,」1233」);

5、字元數不確定char a=」1132131233」;

6、char* str = new char[10];str = 「2131」。

17樓:匿名使用者

char a='1' 表示'1'這個字元賦值給a,char a=1表示ascii碼等於1的字元賦值給a,#include

int main()

18樓:匿名使用者

char a 表示

定義了乙個變數,名叫a, 它是字元型別(佔用記憶體的乙個位元組)char a[1] 表示 定義了乙個陣列,名叫a, 它是乙個包含乙個字元型別資料的陣列,這個陣列只能存放1個字元型別的資料。

兩者在不接觸指標做函式引數的程式的時候功能是一樣的。

19樓:匿名使用者

char a='1' 表示1這個字元

char a=1表示ascii碼等於1的字元

20樓:匿名使用者

前面'1'是字元1,後面 1 是 ascii 碼 1,對應的是另乙個字元。

21樓:時代還怪

char a='1'實際上'1'是ascii字元,等價於char = 49,你說它和char a = 1有什麼區別呢?

chara1000和chara0有什麼區別

char a 100 和char a 區別如下 第乙個是 100個位元組 全部初始化為 0 這個是先給出大小才初始化第二個是就乙個位元組 初始化為 0,這個是賦值初始化 賦的值決定了大小 分配的記憶體位址空間也不一樣,如下 第乙個是 100個位元組 全部初始化為 0 這個是先給出大小才初始化 第二個...

char a在c 中應該怎麼表示

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

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

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