数组大小中的预期常量表达式错误
在 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:
以上是以下是您的文章的一些潜在标题,格式为问答对: **选项 1(关注错误):** * **为什么我在 d 时收到'预期常量表达式”错误的详细内容。更多信息请关注PHP中文网其他相关文章!