c/c++基础知识读书笔记三 结构化数据
来源:互联网 发布:mac暴风影音不能传片 编辑:程序博客网 时间:2024/04/28 23:44
结构的声明
方式(1)
struct
{
int number;
char *name ;
int on_hand;
} part1, part2;
方式(2)
struct part
{
int number;
char *name ;
int on_hand;
} ;
struct part part1,part2; 声明变量part1,part2;
方式(3)
struct part
{
int number;
char *name ;
int on_hand;
} part1, part2;
typedef struct
{
int number;
char *name ;
int on_hand;
} part;
结构的初始化
struct
{
int number;
char *name;
int on_hand;
} part1 = { 528, "Sam", 10}, part2 = { 100, "Joomla",3};
结构注意事项
(1)结构的成员在内存中是按照声明的顺序存储的;
(2)相同类型的结构的变量可以赋值;
(3)通过结构变量的名字加点号和成员的名字 part1.number = 1356;
结构作为参数和返回值
(1) void print_struct(struct Part p)
{
printf("%d",p.number);
}
(2)
struct Part init_part(int number, const char * name, int on_hand)
{
struct p;
p.number = number;
p.name = name;
p.on_hand = on_hand;
return p;
}
(1)给函数传递结构或者从函数返回结构都是生成结构中所有成员的副本。
(2)这样会带来比较大的开销。最好用指针来处理此类数据的传递;
(3)结构可以同惬套;
(4)可以用结构数组;
联合
联合也是由一个或多个成员构成,而且这些成员可能具有不同的类型,但是编译器只为联合中最大的成员分配足够的内存空间,联合成员在这个空间内彼此要覆盖,联合只能保存一个值
union
{
int i;
double d;
} u;
如u.i = 4;
u.d = 5.6;
这样会使u.i的值会被u.d的值代替;
枚举
枚举的定义
(1)enum {CLUBS,DIAMONDS, HEARTS,SPADES} s1, s2;
(2)enum suit {CLUBS,DIAMONDS, HEARTS,SPADES};
enum suit s1,s2;
(3)typedef enum {CLUBS,DIAMONDS, HEARTS,SPADES} suit;
枚举赋值
(1)默认情况下编译器会把整数0,1,2赋值给特定枚举中的常量。
(2)enum suit {CLUBS = 1,DIAMONDS = 2, HEARTS,SPADES = 3}
(3)当没有为枚举常量指定值时,它的值比前一个值大1,第一个默认为0
(4)enum suit {CLUBS ,DIAMONDS = 7, HEARTS,SPADES} HEARTS 为8,SPADES为9
- c/c++基础知识读书笔记三 结构化数据
- c/c++基础知识读书笔记一
- 标准c基础知识三
- 【Accelerated C++】读书笔记(三)
- 《Accelerate C++》读书笔记(三)
- <<Effective C++>>读书笔记(三)
- 《C++primer》读书笔记三
- C语言结构体基础知识
- C primer 读书笔记 结构1
- C语言基础知识整理(三)
- C语言基础知识(三)
- C语言基础知识之三
- C++Primer读书笔记(三)
- 《Essential C++》读书笔记(三)
- 《C++Premier》读书笔记之三
- 《Effective C++》读书笔记(三)
- 《effective C++》读书笔记(三)
- c/c++基础知识读书笔记二 格式化输入输出
- web.xml 中的listener、 filter、servlet 加载顺序及其详解
- 第一章 快速入门 关于while(cin>>a)
- Kscope的安装
- Decoda调试Lua
- Flex 调用本地应用程序
- c/c++基础知识读书笔记三 结构化数据
- Filter与Listener
- C语言动态内存分配函数解析(转)
- 加入收藏和设为主页
- 重读旧的程序员杂志,缅怀Delphi
- Android核心模块及相关技术(转)
- Fortran 命令行编译 IVF win7
- 简洁性
- 提高用户体验的编程细节系列内容之自动切换输入法