C 陣列長度不能為0

2021-08-02 14:31:52 字數 337 閱讀 8692

c++中長度為0的陣列是不允許的,如果不給長度,編譯器不會給陣列分配空間,使用時會出現難以預料的錯誤。

乙個典型的錯誤示例

#include #include using namespace std;

class test

{public:

int scores;

int length;

test()

{cout《執行後發現,陣列scores和變數length的位址相同,那麼score[0]和length這兩個變數訪問和賦值的時候會出現互相覆蓋的問題

我的執行結果:

0x68feec

0x68feec

C 陣列長度

初學c 到陣列的時候想手動寫一下迴圈輸出陣列內容的簡單迴圈,int arrayint 1,2,3,4,5 for size t i 0 i 結果發現輸出內容不對,i的值遠遠比size大,於是查資料了解一下sizeof是什麼作用 sizeof是乙個操作符 operator 其作用是返回乙個物件或型別所...

C 求陣列長度

c c 中沒有提供直接獲取陣列長度的函式,對於存放字串的字元陣列提供了乙個strlen函式獲取長度,那麼對於其他型別的陣列如何獲取他們的長度呢?其中一種方法是使用sizeof array sizeof array 0 在c語言中習慣上在 使用時都把它定義成乙個巨集,比如 define get arr...

C 獲取陣列長度

c c 中如何獲取陣列的長度?如何獲取陣列的長度 2010 12 15 20 49 c c 中如何獲取陣列的長度?收藏 c c 中沒有提供 直接獲取陣列長度的函式,對於存放字串的字元陣列提供了乙個strlen函式獲取長度,那麼對於其他型別的陣列如何獲取他們的長度呢?其中一種方法是使 用sizeof ...