首頁 > 後端開發 > C++ > 為什麼用可變大小初始化 C 數組會導致錯誤?

為什麼用可變大小初始化 C 數組會導致錯誤?

Susan Sarandon
發布: 2024-12-19 08:53:09
原創
785 人瀏覽過

Why Does Initializing a C   Array with a Variable Size Result in an Error?

Array[n] 與 Array[10]:使用變數初始化陣列與數值文字

在 C中,初始化數組時會發生錯誤以變量作為大小的數組,如下面的代碼所示:

錯誤是:“可變大小的對象'tenorData'可能未初始化。 」這是因為C 中不允許使用可變大小的陣列。

G 允許這種行為作為擴展,但它在技術上不符合 C 標準。要解決此問題,可以動態分配記憶體或使用標準容器。

動態記憶體分配

記住使用delete []釋放分配的記憶體一個;

標準容器

常數數組

如果需要合適的數組,可以是使用常量值而不是常量值變數:

在C 11中,從函數取得數組大小時可以使用 constexpr:

以上是為什麼用可變大小初始化 C 數組會導致錯誤?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板