1樓:匿名使用者
這樣理解:
1 定義陣列時,陣列的長度或者說陣列的大小是用整型常量或者常量表示式;
比如 int array[10];
或者 #define size 10
int array[size];都是可以的;
但是 int m=5;
int array[m+5]是錯誤的
2 而對陣列元素進行引用時,陣列下標可以是常量或者整型表示式。
for(i=0;i<5;i++)
array[2*i+1]是可以的
或者array[5]也是可以的。
2樓:匿名使用者
我覺得三個都是對的,沒有錯,不管是陣列長度還是陣列下標都應該是非負的整數(常量或者表示式)
3樓:永飛
1錯在整形表示式上,如果整形表示式值需要執行時才能算出,則不對。引用時就沒事。
3應該是對的
4樓:開膛手
1.必須是整型常量。如果你希望很方便的改變它,可以用#define max 10000(後面的數字可以很方便的改變)int main()
2.引用時,會先計算出下表的值,所以可以是整型表示式。
3.似乎和1是一樣的。只能是整型常量。
希望能夠幫上你的忙!:)
c語言問題高手請進,C語言的幾個問題,請高手指教
分類 電腦 網路 程式設計 其他程式語言。問題描述 1.在c語言中,char型資料在記憶體中的儲存形式是 a 補碼 b 反碼 c 原碼 d ascii碼。答案是d,但是在某些資料中說到 資料在記憶體中是以補碼形式存放的 這使我有些迷惑不解,請各位不吝指教。2.表示式18 2 sqrt 的資料型別為 ...
簡單的c語言指標概念問題高手來秒殺一下
語法上應該是錯的,因為 p是二級指標,無法賦給ptr這樣一個一級指標變數 如果強制轉換下應該沒錯,但是這麼寫編譯應該無法通過 沒有錯啊,但是int p 這個不能這麼用 這個是沒有賦值的野指標,很危險的,呵呵 在執行的時候,程式申請一塊空間給這個程式的所有變數,慢 p所佔有的那個記憶體空間是有資料的 ...
c語言的多選問題,高手幫忙做下,C語言的多選問題,高手幫忙做下
及時澍雨 1 下列常數中能作為c的常量的是 a 0x4 b 2.5e 2 c 33 d 03a 選abc,因為0開頭的數字為八進位制數,僅有0 7,木有a這個數 2 下列計算機語言中,cpu不能直接執行的是 a 自然語言 b 高階語言 c 組合語言 d 機器語言 選abc,高階語言,編譯器會轉化為低...