c語言charstr與charstr這倆種定義字串到

2021-04-20 19:03:47 字數 2169 閱讀 1706

1樓:園林植物手冊

一、概念不同

char *str 宣告的是一個指標,這個指標可以指向任何字串常量。char str 宣告的內是一個字元陣列容,陣列的內容可以是任何內容,嚴格意義上說,末尾加上'\0' 之後才能算是字串,

二、變數不同

char *str裡的str是指標變數,str的值未初始化(區域性變數的話。全域性則自動初始化為null)。char str[ ]裡str是地址常量,str的值是str[ ]的地址。

三、定義方法不同:

在char * str中,明顯str的型別是char*。這沒什麼特殊的,只是一個簡單的char指標。char str是不能這樣定義的,所以假定用char str[6] = "abcde";那麼這裡str的型別是char[6](6個,不是5個,因為最後有個0) ,而這種定義語句也是定義一個char[6]型別的唯一方法。

2樓:這自來水來自這

char *str; 這裡str是指標變數,來str的值未初源

始化(區域性變數的話。bai全域性則du自動初始化為null)char str[10]; 這裡zhistr是地址常量,daostr的值是str[0]的地址

3樓:匿名使用者

兩者都代表bai一個字元陣列存du儲空間的首地址,zhi區別在:

char *str;

這個變數可dao以進行指標運算,比如

回:答str++;

str--;

但如果定義成:

char str;

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

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

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

4樓:

第一種為定義一個指標變數;

第二種為定義一個陣列;

如果定義時為其賦初始值,如char *str1 = "hello world!

5樓:匿名使用者

而且char *str中str更方便活用因為是變數 所以可以進行多重操作,從某種意義上說,一般採用第一種方式去定義一個字串,,注意下越界和初始化的問題就好了

6樓:匿名使用者

char *str 宣告的是一個指標,這個指標可以指向任何字串常量;

char str 宣告的是一個字元陣列,陣列的內容可以是任何內容,嚴格意義上說,末尾加上'\0' 之後才能算是字串

c語言有字串這種資料型別嗎?

7樓:天堂

c語言中的字串使用字元陣列或者字元型指標變數進行儲存可以:1.char str[20];

2.char *str;

這兩種定義方式都可以,如果輸入可以直接用scanf("%s",str);注意,字元陣列名在輸入時不用&了,不知道我的答案滿意麼?

8樓:匿名使用者

c語言沒有,要用字元陣列;不過c++有字串型別。

9樓:匿名使用者

沒有,c++有

c用字元陣列 char c [ ]

10樓:匿名使用者

c語言中,字串可以用 char 型定義(字元型)

11樓:匿名使用者

字串型別是c++中新增的,c是不支援的

12樓:匿名使用者

這就是c++較c的優勢吧,在字串處理上c++更靈活一些

c語言char str[8]是什麼意思啊? 求解答!

13樓:匿名使用者

c語言裡面沒有字串型別,但是c語言有個被稱為「c語言的靈魂」->指標這個東西。char str[8],意思就是定義了一個含有8個字元的字元陣列,單個字元引用方式為str[0]...str[7]。

同時陣列名str也是這個陣列的首地址。可以這樣子直接打出str陣列裡面的內容

printf("%s",str);

14樓:匿名使用者

定義了char型別的陣列,陣列名是str

15樓:匿名使用者

。。。。。還幫我提問了啊,謝謝哈~~~~o(∩_∩)o~~~~

c語言裡charstr後邊的t

這個叫陣列,說白了就是一組相同資料型別的資料。其定義形如 型別 陣列名 陣列大小 陣列根據大括號的數量又分有維度,一維陣列 型別 陣列名 陣列大小 二維陣列 型別 陣列名 行大小 列大小 三維陣列 型別 陣列名 行大小 列大小 高大小 以此類推。舉個例子 定義一維陣列 char t 30 陣列t中最...

在c語言中char是什麼意思,C語言初學者 什麼程式設計軟體適合初學者

是資料型別的說明符來的,就是說明這個資料是按1個位元組儲存,比如說 char a 就是說a儲存在一個位元組中,資料範圍為 128 127.是取址符,用於復獲取一個變數制的指標地址。在變數定義的時候是一個指標變數的識別符號,而在變數應用的時候則是 取指標地址上的值 char 如果說是在定義上的,那麼這...

C語言char型別資料是不是遠遠不止ASCII碼

是不止ascii碼值的。在c語言中,char型別佔1個位元組,8位二進位制。其範圍為 128 127.而傳統的ascii碼值只有0 127部分。所以,char能表示的資料範圍,非負數部分用來表示ascii碼。其餘部分,用作它用,比如顯示漢字,或者其它非ascii碼值等等。char型資料 取值範圍 0...