如何在c c 中陣列的下標使用變數

時間 2021-07-21 03:42:39

1樓:扈懷煒

宣告陣列時不能使用變數座位下標,在引用陣列元素時可以使用變數,如上所示.

2樓:匿名使用者

對於ansi 標準c及c++,這都是標準沒有定義的,也就是說,最好認為不可以用變數代入陣列個數

c99標準中加入了這個特性,但c99標準還未流行。

對於c++編譯器,gcc擴充了這個功能,但是它未被標準支援所以這樣的程式是不具備編譯可移植性的。早期的vc++6.0不支援此特性。

但是你若在c++中定義const int n = 5;

則可以int a[n];

因為c++中,const型變數是作為編譯時常量的。

但在ansi c中卻不行,因為c中const型變數是作為只讀的變數出現的,所以不能用其定義陣列個數

雖然在彙編的角度看,int a[n];這種語句即使n是變數,也是很好實現的,但c/c++出於多種考慮(例如n的不確定性以及樓上提到的一點原因)拒絕了它

要模擬動態陣列,最好使用new,malloc類似函式動態分配記憶體,這樣的程式才是最安全的。

陣列的引用下標可以是變數常量

3樓:匿名使用者

char a[100];

for(i=0;i<100;i++)

c 中各型別陣列長度,C C 中如何獲取陣列的長度

用於儲存這些程式設計師直接宣告的變數的記憶體區域叫棧,是一種高速連續的記憶體區域,其大小是有限制的,不超過2m。一個int型資料佔有4個位元組,那麼能宣告2 1024 1024 4 524288個。當然這是一種假設。回答補充 一個int資料一共有4 8 32位,其中第一位是符號位,不計入,他可以表達...

C 如何在類中引用另類的變數,C 如何在一個類中引用另一個類的變數

在第二個類中例項化第一個類,在通過例項化後的類的函式 一般是get之類的函式 來引用!看看這個方法行不行 如果是兩個孤立的類,最好不要這麼做,一個類需要用到的資料,最好是從另外一個類公開的介面來獲取。直接引用另外一個類的變數,會破壞資料的封裝性,會有麻煩的。如果是派生類要引用基類的資料,只要資料不是...

C 中如何在二維陣列中查詢某個值

折柳成萌 思路 先定義一個字元陣列,接著輸入字串賦值,輸入需要查詢的字元,遍歷字元陣列,查詢輸入的字元,如果找到停止遍歷輸出位置,如果遍歷結束還沒找到,輸出沒有找到。參考 參考 includeusing namespace std int main if i strlen ch cout 沒有找到!...