我正在尝试反向循环struct
数组,但不太确定如何进行。这就是我通常循环的方式:
struct Thing* ptr = things;
struct Thing* endPtr = things + sizeof(things)/sizeof(things[0]);
for(ptr < endPtr)
{
// do stuff
}
最佳答案
假设 N >= 0
,您的 things
序列的项目大小,您当然可以使用索引,但实际上您只需要一个指针:
struct Thing *ptr = things + N;
while (ptr != things)
{
--ptr;
// do something with *ptr;
}
关于c 反向循环结构体数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40545010/