【发布时间】:2013-12-04 18:59:02
【问题描述】:
我正在做一个项目,该项目要求我使用预先确定的前缀和数字命名结构数组变量。该程序从一个如下所示的数组开始:
foo[elements]
我需要这样声明:
foo1[elements+1]
我不能只声明foo1[elements+1],因为没有预定数量的具有更大内容的新数组,因为我将遍历一个循环。如果我需要提供更多信息,或者如果我没有清楚地提出我的问题,请告诉我。我不知道这是否可能,但如果是的话,它肯定会缩短我的时间。
【问题讨论】:
-
在 C 中,所有类型必须在编译时已知。改变你的设计...
-
变量名也是如此
-
可以动态创建变量,使用malloc,创建变长数组。此外,您可以使用预处理器粘合来更改变量的名称(在末尾附加一个数字),但正如 hyde 所说,这必须在编译时知道。
-
想到的是使用#define 将元素分配给某物。能否解释一下这个需求的用例?