char和char有什麼區別,C語言中char 是什麼意思? 和char 有什麼區別呀

2022-02-02 03:23:38 字數 3319 閱讀 1548

1樓:匿名使用者

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

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

2樓:匿名使用者

沒有什麼不同,都是定義一個指向char型的指標但是要注意的是如果你想在一句話裡面2個指標,那麼正確的做法應該是char*a,*b;而不是char*a,b;後面那個b只是一個char型變數所以一般提倡使用第一種,避免糊塗搞錯,當然如果你僅僅在一句話裡面定義一個變數或者是在定義形參的話,那麼第二種看上去更直接一點。希望對你有幫助~!

3樓:歪歪熊

在部分時候char或unsigned char的本質是8bit的整數,比如在影象領域,用8位資料描述灰度(或某一色彩分量)時通常使用unsigned char *型別的指標指向影象資料儲存區域。這二者的主要區別於unsigned int和int的區別類似,就是最高位是否作為符號位。unsigned char表示範圍為0~255,char的表示範圍為-128~127

4樓:匿名使用者

char *num 中的num是個地址。

char num 中的num是個資料。

建議你看看c語言的 指標。。

5樓:匿名使用者

「abcde」的型別本身就是const char *const,不能再加*了

c語言中char**是什麼意思? 和char*有什麼區別呀

6樓:花潯方小憂

指標是一種型別。比如 char* a。一般人寫法是把*和a寫一起,即char *a。

從型別定義上應該是第一種(雖然語法和效果上二者沒區別)。char* a的意思是,a變數是一個指標,char型指標,裡面存的char的地址。。同理 char**a的正確理解的寫法是(char*)* a,即a變數是一個指標,是一個char*型的指標。

即裡面存的的char*的地址。再說直白點就是(char) *,char是一種型別,(char*)*,括號裡面的char*也是一種型別,和int,char平級別的型別。char* a。

使用*a取得a的值。同理char** a,**a取得的也是值,該值是個地址,該地址指向a實際的值。簡單例子就是我給你個紙條,上面寫著我的地址,(相當於char* a)。

然後我又給你個紙條,上面寫著上一個紙條的地址。

7樓:匿名使用者

char**是二重指標,也就是指向指標變數的指標。 而char*是一維指標,即指向字元變數的指標。

其區別在於,指向地址所儲存的值不同。

對於char **p1, *p1的型別為char*型,而**p1的型別才是char型。

對於char*類指標p2,*p2就是char 型。

8樓:阿冬

設char a;

char*p=&a;表示p是一個指標變數,裡面儲存的是一個地址,該地址是字元型別變數a所在的位置。

char**pp=&p;表示pp是一個指標變數,裡面儲存的是一個地址,該地址是指標變數p所在的位置。

9樓:匿名使用者

char*是指標,可以用來表示一維陣列,

char**是指標的指標。這個可以用來表示二維的陣列

10樓:

char** 是二維字元指標,而char*是一維字元指標,跟int**和int*的區分一樣。謝謝

11樓:匿名使用者

char**是指標的指標型別,char*是指標型別

12樓:楓璽

c語言中,char* 表示字元指標型別,當其指向一個字串的第一個元素時,它就可以表示這個字串。

如char* str="learn c";中,"learn c"是長度為8的字元陣列常量,其最後一個元素是'\0',而這句代表執行的結果是將str指向了"learn c"的第一個字元'l',str後面的連續記憶體依次存放'e','a','r','n',' ','c','\0'

擴充套件資料

定義char*注意事項:

1、在程式宣告變數的時候的*,只是表明「它是一個無符號整數,這個整數指向某個記憶體地址,一次訪問sizeof(type)長度」,不要和(*)操作符混淆。

2、能將二維陣列的陣列名賦給指標陣列的陣列名,pai=arr(錯),因為兩者的型別不一致,二維陣列名的型別是指向int型的指標,而指標陣列的的陣列名是指向int *型別的指標。

13樓:匿名使用者

char *s1="hello";

char *s2[2]=;

printf(s1); //helloprintf(s2[0]); //hello

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

14樓:匿名使用者

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

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

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

希望對你有幫助

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

15樓:匿名使用者

**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不限字元個數。

16樓:千鋒教育

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

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

char *str;

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

str--;

但如果定義成:

char str;

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

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

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

char表示什麼意思,C語言中char 是什麼意思? 和char 有什麼區別呀

char 是宣告一個字元型別的指標。比如 chat y 就是宣告一個指標y,這個指標指向的地址上只能存放字元型別的值。p是個指標變數,指向某一型別的資料 pp是指向指標的是指標 二級指標 比如 char a z p a,pp p 解釋 指標變數p的值存放的不是z,而是z在記憶體中的地址,同樣指標變數...

c語言中char是什麼意思

char 是個資料型別,bai不知道du你是否認識int zhishort double floar之類的,如果你認dao識,那麼char就是跟它們內 一樣,只不過容char定義的是字元變數 陣列 指標。如果你不認識,建議好好看下c語言資料型別的介紹 char 字元型指bai針,指向一個字元 duc...

資料庫中char和varchar的區別

char的長度是不可變的,而varchar的長度是可變的,也就是說,定義一個char 10 和varchar 10 如果存進去的是 csdn 那麼char所佔的長度依然為10,除了字元 csdn 外,後面跟六個空格,而varchar就立馬把長度變為4了,取資料的時候,char型別的要用trim 去掉...