Welcome 微信登录
编程资源 图片资源库 蚂蚁家优选 PDF转换器 软件资源

软件开发小程序制作系统集成与运维空间租用硬件开发视频监控技术咨询与支持——联系电话:0311-88999002/88999003

首页 / 软件开发 / C语言 / 学点C语言(25):数据类型 - 结构数组与结构指针

学点C语言(25):数据类型 - 结构数组与结构指针2010-04-30 博客园 万一1. 结构数组:

#include <stdio.h>

int main(void)
{
struct Rec {int x,y;};

struct Rec rs[10];

size_t i;
for (i = 0; i < sizeof rs/sizeof rs[0]; i++) {
rs[i].x = i;
rs[i].y = i * 2;
}

for (i = 0; i < sizeof rs/sizeof rs[0]; i++) {
printf("%d, %d ", rs[i].x, rs[i].y);
}

getchar();
return 0;
}

#include <stdio.h>

int main(void)
{
struct Rec {
char name[12];
short age;
} rs[3] = {
{"AAA", 11},
{"BBB", 22},
{"CCC", 22}
};

size_t i;

for (i = 0; i < sizeof rs/sizeof rs[0]; i++) {
printf("%s, %d ", rs[i].name, rs[i].age);
}

getchar();
return 0;
}

2. 结构指针指向已存在的结构数组:

#include <stdio.h>

int main(void)
{
struct Rec {
char name[12];
short age;
} rs[3] = {
{"AAA", 11},
{"BBB", 22},
{"CCC", 22}
};

struct Rec *p = rs;

printf("%s, %d ", p->name, p->age);
printf("%s, %d ", (p+1)->name, (p+1)->age);
printf("%s, %d ", (p+2)->name, (p+2)->age);

getchar();
return 0;
}