不确定什么是“好的实践”或被认为更“正确”。我有一个数组,我想通过名称访问单个元素而不是arrayname[]。我可以使用#define或指针,也可能有其他方法。
例如:
#define value1 myarray[1]
int myarray[SIZE];
value1 = 5;
或者
int myarray[SIZE];
int *ptr;
ptr = &myarray[1];
*ptr = 5;
似乎对我来说,使用#define路线更简单且占用更少的内存,但可能会引起我不知道的一堆问题。如果有任何建议,那就太好了,我希望我的代码在可能的情况下遵循普遍接受的标准。
*编辑:也许有一个更好的方法。我的最终目标是获得一个将发送到外围端口的数组。然而,数据由非常不同的数据集组成,一个单一的数组名称不能代表分配的数据。我的内存非常有限,所以我想避免每个值都进行双重存储。