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

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

Patricia Arquette
Patricia Arquette原創
2024-10-25 00:00:02985瀏覽

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中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn