chunge

自己的一点理解:

C里边的指针p,当我们对其作 +1 操作时(p=p+1),本质上都是“p当前的地址 + p所属类型大小的偏移量地址”,并非真实内存中实际地址加1。

typedef struct {
char name[40];
char age;
}STU;

STU stus[] = {
{"aa", 1},
{"bb", 2},
{"cc", 3},
{"dd", 4},
{"ee", 5},
{"ff", 6}
};

STU *p = stus;
for( int i=0; i<6; i++ )
{
printf("%d [%s %d]\n", i, p->name, p->age);
//p = p + sizeof(STU);    错,不需要自己额外计算真实偏移量

p  = p + 1;                   对
}

 

分类:

技术点:

相关文章:

  • 2022-12-23
  • 2021-09-10
  • 2021-12-09
  • 2022-02-12
  • 2021-11-22
  • 2022-12-23
  • 2021-11-16
  • 2022-02-13
猜你喜欢
  • 2021-10-09
  • 2021-04-02
  • 2021-09-15
  • 2021-12-09
  • 2021-08-24
  • 2021-11-18
  • 2021-11-25
相关资源
相似解决方案