学习小结,对struct结构深化巩固
2017-04-27 20:42
375 查看
之前稍微用到了struct,看了一点基本用法。经过查阅参考书籍,对struct又加深了一些理解。
例程:
#include <stdio.h>
#define MAXTITL 41 //宏定义,书名最大长度41
#define MAXAUTL 31 //作者名最长31
struct book //结构模板,标记为book
{
char title [ MATITL ];
char author [ MAXAUTL ];
float value;
};
引用参考书例程,发现结构声明没有创建新的数据对象,而是描述了组成结构模板的元素。以后调用:
struct (关键字)book(该结构的快速标记)library(使用book结构设计的结构变量)
在结构变量的声明中,struct book所起的作用与int相似,例如可以同时定义两个变量,甚至可以定义一个指向该结构的指针:
struct book doyle,pan,* ptbook;
访问结构成员:
使用所定义结构的结构成员时,以例程中的book为例子;book.title,book.author是char型的数组,book.value是一个float型变量。在scanf("%.2f",&book.value);中,.的优先级高于&,其意义等价于scanf("%.2f",&(book.value));
定义结构的指定初始化项目
若只初始化book结构的成员value
struct book surprise = { .value = 10.00};
按顺序任意顺序指定初始化项目
struct book gift = { .value = 10.00,
.author = "James",
.title = "Rue for the Toad"};
结构和数组相似,初始化后结构各成员获得初始值,但其实际值为最后一次赋的值
struct book gift = { .value = 10.00,
.author = "James",
.title = "Rue for the Toad",
.value = 9.00};
例程:
#include <stdio.h>
#define MAXTITL 41 //宏定义,书名最大长度41
#define MAXAUTL 31 //作者名最长31
struct book //结构模板,标记为book
{
char title [ MATITL ];
char author [ MAXAUTL ];
float value;
};
引用参考书例程,发现结构声明没有创建新的数据对象,而是描述了组成结构模板的元素。以后调用:
struct (关键字)book(该结构的快速标记)library(使用book结构设计的结构变量)
在结构变量的声明中,struct book所起的作用与int相似,例如可以同时定义两个变量,甚至可以定义一个指向该结构的指针:
struct book doyle,pan,* ptbook;
访问结构成员:
使用所定义结构的结构成员时,以例程中的book为例子;book.title,book.author是char型的数组,book.value是一个float型变量。在scanf("%.2f",&book.value);中,.的优先级高于&,其意义等价于scanf("%.2f",&(book.value));
定义结构的指定初始化项目
若只初始化book结构的成员value
struct book surprise = { .value = 10.00};
按顺序任意顺序指定初始化项目
struct book gift = { .value = 10.00,
.author = "James",
.title = "Rue for the Toad"};
结构和数组相似,初始化后结构各成员获得初始值,但其实际值为最后一次赋的值
struct book gift = { .value = 10.00,
.author = "James",
.title = "Rue for the Toad",
.value = 9.00};
相关文章推荐
- 关于struct结构体内存分配的学习小结
- 【C语言】学习笔记8——结构struct
- Swift学习小结之枚举和结构体
- (9) 数据结构入门概念小结--每天五分钟学习数据结构
- MSP430学习小结2-程序主体结构安排及低功耗-转载
- C++学习笔记之五 复合类型之结构体(struct)
- GO 学习笔记(四)struct 结构、slice
- MSP430学习小结2-程序主体结构安排及低功耗-转载
- JSON入门级学习小结--JSON数据结构
- 初步学习“C#中的结构(struct)”
- 初步学习“C#中的结构(struct)”
- C++学习笔记之struct和union(结构和共用体)
- C#面象对象学习:类(class)与结构(struct)
- 二叉树学习小结(序列化和反序列化、二叉树遍历、二叉树镜像、二叉搜索树、二叉树子结构等)
- oracle结构学习小结
- [struct]C编程数组与结构的学习
- 初步学习“C#中的结构(struct)”
- JSON入门级学习小结--JSON数据结构
- 学习小结(一) —— 基础数据结构
- 学习小结(二) —— 基础数据结构