首頁 > 後端開發 > C++ > 以下是您的文章的一些潛在標題,格式為問答對: **選項 1(關注錯誤):** * **為什麼我在 d 時收到「預期常數表達式」錯誤

以下是您的文章的一些潛在標題,格式為問答對: **選項 1(關注錯誤):** * **為什麼我在 d 時收到「預期常數表達式」錯誤

Patricia Arquette
發布: 2024-10-25 00:00:02
原創
1096 人瀏覽過

Here are some potential titles for your article, formatted as question-answer pairs:

**Option 1 (Focus on the Error):**
* **Why am I getting an

陣列大小中的預期常數表達式錯誤

在 C 中,陣列宣告需要常數大小。當嘗試使用非常量表達式聲明數組時,會發生「預期常數表達式」錯誤。

請考慮以下程式碼片段:

<code class="cpp">int size = 100;
float x[size][2]; // Error</code>
登入後複製

在此範例中, size 是一個執行時間值,使其成為非常量表達式。因此,編譯器無法在編譯時確定數組的大小,從而導致錯誤。

解決方案

要解決此問題,請使用以下資料結構:支援動態調整大小,例如std::vector:

<code class="cpp">std::vector<std::array<float, 2>> x(size);</code>
登入後複製

或者,您可以使用new 為數組分配記憶體:

<code class="cpp">float (*px)[2] = new float[size][2];</code>
登入後複製

記住刪除[] px用於釋放記憶體。

其他選項

如果您無法存取現代C 功能,如std::vector:

  • 使用std::pair 向量
  • 使用模板創建您自己的具有動態大小調整的數組類型

以上是以下是您的文章的一些潛在標題,格式為問答對: **選項 1(關注錯誤):** * **為什麼我在 d 時收到「預期常數表達式」錯誤的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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