㈠ c語言中數組的下標可以是字元嗎代表什麼意思
C語言數組的下標只能是合法的整型值。
當下標為字元時,有兩種可能:
1
以字元常量作為下標。如a['A'];表示'A'的ascii碼對應的數組偏移量。在實際應用中不常見,但是從語法上來說是合法的。
2
字元本身為變數。如
int
i;
int
a[100];
for(i
=
0;
i
<
100;
i
++)
printf("%d\n",
a[i]);
這里的a[i],下標就是i,本質上i是一個變數,訪問的時候是根據變數值進行訪問對應元素的。
㈡ 在c語言中,用數組下標操作字元串下面的代碼有什麼問題
這段代碼要看你實現什麼功能了,編譯不會顯示錯誤,能成功執行。但是輸出的內容卻不能保證,可能是一個亂碼。
因為當你循環到'\0'時,i++還是會自增的,所以str[i]也就指向了'\0'後一個位元組的空間內的內容。
㈢ C語言定義字元數組時有兩個數組下標究竟是什麼含義
char ch[3][5]={"AAA","BBB","CCC"};
如果就以你這個代碼來看,它可以用兩種方式解答:
三個長度最大為4的字元數組,這很明顯
一個3x5的二維數組。只不過因為類型是char所以可以用字元串的方式操作它。
其實單從變數角度來看,它就是一個數組,不管是二維還是一維。因為你可以用指針將這個二維數組以O(1)的復雜度轉成一維數組。
無論如何,它最終到底表達什麼意思,是要看你怎麼用的。你要是以正常數組的方式使用,它就是正常的數組;你要是以字元串數組的方式使用,它就成字元串數組了。
㈣ c語言中,數組元素能是字元串嗎
能。char型二維數組的第二維數組的元素就是一個由一維數組存儲的字元串。如:
cahr a[2][10]={"123456789","abcdefg"};。元素a[0]就是字元串"123456789",元素a[1]就是字元串"abcdefg"。
㈤ C語言,字元串數組下標的問題
char a[100];
gets(a); //注意括弧,分號的全形和半形
㈥ 在C語言中,能作為數組元素下標的數據類型是什麼舉例說明下標的取值范圍是什麼
int 型的就能滿足需要,usinged int 取值0-65530, 過大的數組沒什麼實際意義。
㈦ C語言中數組元素的下標可不可以是數組元素,另外··
當然可以,只要能夠被解釋成整數的都可以
㈧ c語言中,定義數組和引用數組時,其數組的下標的數據類型分別允許是什麼
1、C89/C90標准:定義數組時下標只允許使用整型、字元型常量,引用數組時下標可以使用整型、字元型的常量或者變數
2、C99標准:定義數組時下標可以使用整型、字元型的常量或變數,但變數必須已經賦值;引用數組時下標可以使用整型、字元型的常量或者變數。以上所說的常量及變數均包含表達式。
(8)數組下標可以是字元嗎c語言擴展閱讀
1、數組包含給定類型的一些對象,並將這些對象依次存儲在連續的內存空間中。每個獨立的對象被稱為數組的元素(element)。元素的類型可以是任何對象類型,但函數類型或不完整類型不能作為數組元素。
2、在數組定義中,可以將元素數量指定為一個常量表達式,或者在特定情況下,指定為涉及變數的表達式。採用這兩種方式定義的數組分別被稱為固定長度數組和長度可變數組。
3、固定長度數組可以具有任意存儲類別:可以將它們定義在所有函數的外面或語句塊的裡面,並且可以使用或不使用存儲類修飾符 static。唯一的限制是數組不能作為函數參數。一個傳入函數的數組參數需要被轉換為指向數組第一個元素的指針。
㈨ 在C語言中如何輸入帶下標的字元
不支持帶下標的字元,可以用其他方式代替,例如x下標2寫成x_2