c程式問題ss與ss的區別,c語言中 ss 是什麼意思

2021-12-24 20:42:23 字數 1745 閱讀 7183

1樓:匿名使用者

供參考解釋:

char *ss="0123456789"; 定義指標 指向字串

分析:指標型字串,可以理解成字元陣列 char str[10]=

針對提問,ss為指標,指標本身儲存的是指向儲存空間的首位址值,而非具體的內容值。

根據系統和平台的不同,對指標本身大小的設定也有區別,上例中應該是32系統,用於儲存空間位址的指標變數的大小是4位元組。

*ss為指標間引,可理解為*(空間首位址),獲取的就是儲存空間首位址的值,對於字串"0123456789"來說,首位址開始儲存的單元內容,是字元0,所以佔用1個位元組,可等效於舉例中的str[0]。

理解上述內容的關鍵是正確區分指標本身和指標指向空間的區別,以及字串和字元陣列的關係!

2樓:昧先幾者非明哲

sizeof() 判斷資料型別記憶體中佔用的位元組數!

char *ss="0123456789";

ss是指標指向乙個儲存字串的記憶體空間,無論指向空間儲存任何內容,只要是指標,它就是

int型別的,所以sizeof(ss) = 4.

ss 既然是指標, *ss就是字元陣列的首元素,也即是*ss =  '0' ;

『0』 是char型資料,所以sizeof(*ss) = 1 ;

3樓:匿名使用者

char *ss = "0123456789";

/*·ss是指標變數

·ss存的是後面字串的位址

·*ss可以看做ss[0],也就可以看做是字串裡的第乙個字母,也就是'0'

·sizeof(ss), 求指標變數的大小,指標變數的大小是4位元組·sizeof(*ss)可以看做sizeof(ss[0])可以看做sizeof('0'),求乙個char字元的大小,所以1個位元組*/

4樓:牛浩涆

注意:第乙個ss是char型指標,字元型是四個位元組,故輸出4,因為你ss指標指向了數字0,是整形的數,佔乙個位元組,故*ss等價於數字0,輸出就是1了。

5樓:匿名使用者

ss宣告的是指標,所以大小為4

*ss代表的是乙個char型別資料,所以是1char *ss="0123456789";

你這句賦值的結果是,*ss裡只會有乙個0,其它什麼都沒有,資料截斷

6樓:j**a緊挨

ss 是指標。不管什麼指標,都佔4位元組

*ss 是"0123456789" 的值, 因為char型別只能儲存1位元組,所以它只存了'0『,所以'0'只佔了1位元組

7樓:認錯

ss 是乙個位址,此時將會解釋為字串的首位址;

*ss 是乙個指向首位址的指標,此時解釋為乙個字元。

c語言中*ss++是什麼意思

8樓:匿名使用者

若有char array[5] = "abcd";

char *ss = array;

printf("%c", *ss++); // 先輸出'a',然後指標ss指向'b'

c語言中,比如乙個字串ss,則*ss,ss[ ]可以互相通用嗎?

9樓:匿名使用者

在宣告函式做形參時,它們是一樣的。

10樓:匿名使用者

可以,但不確定的東西(尤其是指標)平時盡量少用。

c程式鉤子的問題,c 鉤子有問題

c 是物件導向的程式語言,所以鉤子是寫在類中的。設定的鉤子型別 public enum hooktype int public partial class form1 form dllimport user32.dll private static extern int callnexthookex...

c語言中與的區別,C語言中 與 的區別

區別如復下表 擴充套件資料具體區別制的例子 bai1 c 語言輸入輸出du printf a d,b d zhi,a,b scanf d d d a,b,c 2 vb 語言的輸入輸出 inputbox x 輸入 x 的值dao print x x 而且,這兩種運算子,還分為字首運算和字尾運算 如 i...

C 程序的小問題,C 程式的乙個小問題

程式首先執行主函式 也就是main函式 並且是從上到下順序執行,當程式執行到第6行的時候,開始執行simon函式,傳入的引數是3,並且也是在simon函式從上到下順序執行,這時第一次列印出cout simon says touch your toes n times.然後再回到主函式的第7行,再順序...