结构体初始化
来源:互联网 发布:古鹰 知乎 编辑:程序博客网 时间:2024/06/08 19:16
基本上初始化的常用方法有三种:
1.gcc的扩展方式
#include <stdio.h> struct mych { int k; }; struct myst { int i; int j; struct mych ch; }; int main(void) { struct myst st = { .i = 1, .j = 2, .ch = { .k = 3 } }; printf("st.i = %d, st.j = %d, st.ch.k = %d\n", st.i, st.j, st.ch.k); return 0; }
这种方式是在成员前面加上“."来初始化,这种方式比较直观,但是属于gcc扩展,可移植性较差。但是如果是完全面向Linux的开发,这种方式还是比较好的。这是在linux内核中发现的,具体可以参考Linux内核中/net/ipv4目录中的arp.c文件
2.使用{}来进行初始化
- struct myst st = { 1 ,2, {4}};
- 这种方式输入C标准的用法,可移植性好,但是结构体类型复杂时,可读性很差
3.使用库函数
- memset(&st, 0, sizeof (st));
- bzero(&st, sizeof (st));
阅读全文
0 0
- 结构体初始化--指定初始化
- 结构体的初始化
- 结构体变量初始化
- 结构体初始化
- C++结构体初始化
- 结构体的初始化
- 结构体初始化方法
- 结构体初始化
- 结构体初始化
- 结构体初始化
- c 结构体初始化
- 结构体初始化
- 结构体初始化
- 结构体数组初始化
- 结构体初始化
- 结构体初始化
- 结构体初始化
- c结构体初始化
- Python实战:网络爬虫都能干什么?
- C#实现爬取淘宝商品
- MFC延时功能GetTickCount的实现
- vue拖拽练习
- Android6.0蓝牙搜索设备
- 结构体初始化
- 03,Lua 词法规范
- 汇编语言实现简单的计算器
- 软件工程(C编码实践篇)学习总结
- LinkedHashMap图解--转载
- Spark2.1.1<IDEA使用SBT或者Maven构建spark程序>
- 20170615
- Linux C 进程间的信号通信
- 生成器