这可能很简单,但是我试图尝试更好地理解指针。
可以说我有一个结构
struct Person{
char Name[20];
char ID[15];
char Address[50];
char Number[15];
};
并说我一堆又一堆地存储在内存中。
所以现在我声明一个指向该结构的新指针。
struct Person *ptr;
该指针将从FIRST条目开始吗? (又称第一个“名称”),当我对其进行迭代(又称ptr++)时,它将转到下一个STRUCT或下一个“输入”,也就是名称-> ID->
因此,例如,在第一个条目上说Im,数据是:
Jason Adams
111222333
111 Fake Drive
55555551000
第二个条目是
Matt Johns
111555333
555 Derp lane
1000022434
现在我迭代ptr(ptr++),将ptr指向第二个结构(带有matt johns的结构),还是指向Jason Adams的“ID”
我希望这是有道理的?
最佳答案
它将指向第二个结构。指针将由sizeof(Person)
推进。
关于C++ Struct指针问题,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/4066129/