C-044.结构体数组
2015-12-05 15:44
225 查看
什么是结构体数组?
结构体数组:数组元素为结构体的数组
定义结构体数组
结构类型 数组名称[元素个数];
//一般情况下结构体类型都是定义在函数的外部
struct Person{
int age;
char *name;
};
int main(int argc, const char * argv[]) {
//结构体如果没有初始化,它里面都是垃圾值
//第一种方式:向定义结构体数组然后初始化
struct Person per[2]; //定义含有2个元素的结构体数组
per[0] = (struct Person){10,"牛顿"}; //整体赋值
per[1].age = 20; //逐个赋值
per[1].name = "爱迪生";
for (int i = 0; i < 2; i++) { //遍历数组
printf("age = %d,name = %s\n",per[i].age,per[i].name);
}
//第二种方式:定义结构体数组的同时进行初始化
//如果没有显式初始化的结构体,那么这个结构体中所有成员都会被初始化为0
struct Person stu[3] = {{30,"阿拉丁"},{40,"青蛙王子"}};
for (int i = 0; i < 3; i++) { //遍历数组
printf("age = %d,name = %s\n",stu[i].age,stu[i].name);
}
return 0;
}
结构体数组:数组元素为结构体的数组
定义结构体数组
结构类型 数组名称[元素个数];
//一般情况下结构体类型都是定义在函数的外部
struct Person{
int age;
char *name;
};
int main(int argc, const char * argv[]) {
//结构体如果没有初始化,它里面都是垃圾值
//第一种方式:向定义结构体数组然后初始化
struct Person per[2]; //定义含有2个元素的结构体数组
per[0] = (struct Person){10,"牛顿"}; //整体赋值
per[1].age = 20; //逐个赋值
per[1].name = "爱迪生";
for (int i = 0; i < 2; i++) { //遍历数组
printf("age = %d,name = %s\n",per[i].age,per[i].name);
}
//第二种方式:定义结构体数组的同时进行初始化
//如果没有显式初始化的结构体,那么这个结构体中所有成员都会被初始化为0
struct Person stu[3] = {{30,"阿拉丁"},{40,"青蛙王子"}};
for (int i = 0; i < 3; i++) { //遍历数组
printf("age = %d,name = %s\n",stu[i].age,stu[i].name);
}
return 0;
}
相关文章推荐
- light oj--1008--(数学规律问题)
- iOS开发——RunTime(运行时)
- 基于winpcap和syn的dos攻击,亲测
- Java反射机制
- ===item填充导致layout显示和想要的不同
- android自定义ProgressBar 修改进度条样式 出现setProgress无效问题
- STM32 学习总结5 --- CAN通信
- C#转义字符总结
- (七十一)关系表达式
- 随机产生20个数(10以内的)放入arraylist中
- 深入理解伪元素
- 异常简述
- HashMap集合中装入ArrayList集合
- cocos2d-js环境搭建
- PHP常用正则表达式
- CCITT标准CRC-16计算C源代码
- JAVA集合类
- malloc源码分析---2
- android电话监听实现
- Xcode 7.0以后 iOS 9.0以后 最新百度地图 详细使用