文档章节

结构体的初始化

S易水寒S
 S易水寒S
发布于 2016/06/30 13:43
字数 199
阅读 37
收藏 0

    结构体初始化, 目前来说共有4种方法.

    示例结构体:

    typedef struct A{

        int age;

        char    name[20];

    }stA;

    typedef struct B{

        struct A a;

        char schoolName[40];

    }stB;

    一, 定义时初始化为所需值.

        例如: struct A a = {1, "zhang"};

   二, 定义时初始化为零.

        例如: struct A a= {0};

        注: 此时stA如此初始化为零不会有警告. 但是如果 struct B b = {0}; 就会提示以下警告:

                warning: missing braces around initializer.

            那么初始化stB就需要第三和第四种方法.

    三, 使用memset进行初始化.

        例如: struct B b; memset(&b, 0, sizeof(b));

    

    四, 定义时使用{}初始化.

        例如: struct B b = {};

        此初始化方法来之与<<微软一站式示例代码库编程规范>>.

© 著作权归作者所有

S易水寒S
粉丝 3
博文 3
码字总数 1105
作品 0
深圳
程序员
私信 提问
【Go语言】【12】GO语言的结构体

当我第一次接触到C语言时,就对结构体投入了极大的兴趣,认为这个东西以后大有作为,后来接触Java、C++,面向对象编程中的对象进入我的视线,经过了这么多年的磨练,回过头来再看结构体依旧是...

qingkechina
2015/07/06
0
0
【Go语言】【13】再谈GO语言的结构体

本文从如下四个方面再领着大家认识结构体 匿名结构体和匿名成员的结构体 值传递和引用传递 再谈嵌套结构体 面向对象 1、匿名结构体和匿名成员的结构体 如上篇所述,一个结构体需要先声明,再...

qingkechina
2015/07/07
0
0
学习笔记1-goland结构体(struct)

写在前面:若有侵权,请发邮件by.su@qq.com告知。 转载者告知:如果本文被转载,但凡涉及到侵权相关事宜,转载者需负责。请知悉! 本文永久更新地址:https://my.oschina.net/bysu/blog/3036...

不最醉不龟归
04/21
0
0
IO FILE 之 fopen 详解

作者:raycp 前言 最近打算详细整理下相关的笔记,不少地方都是知道个大概,因此这次打算从源码出发,把IO FILE相关的东西都过一遍。 思路大致是、以及之类的IO函数的源码分析,再到libc2.2...

raycp
05/13
0
0
go语言结构体入门

本文忽略了匿名结构体跟结构体匿名方法,一般作为开发者不建议去玩这种技巧性但没实际意义的东西,直接从结构体的值传递跟引用传递开始 1、值传递和引用传递 无论学习哪门语言,都基本会大谈...

tree2013
2016/10/23
10
0

没有更多内容

加载失败,请刷新页面

加载更多

分布式架构 实现分布式锁的常见方式

一、我们为什么需要分布式锁? 在单机时代,虽然不需要分布式锁,但也面临过类似的问题,只不过在单机的情况下,如果有多个线程要同时访问某个共享资源的时候,我们可以采用线程间加锁的机制...

太猪-YJ
40分钟前
3
0
GitLab Docker 安装记录

安装环境 环境Centos7.4 64 1.拉取镜像文件 docker pull gitlab/gitlab-ce:latest 2.docker 安装 git.zddts.com 为访问域名或换成可以访问的IP docker run -d --hostname git.***.com -p ......

侠者圣
今天
0
0
部署kubernates dashboard

参考官方文档: https://github.com/kubernetes/dashboard 直接部署官方默认的dashboard: kubectl apply -f https://raw.githubusercontent.com/kubernetes/dashboard/v1.10.1/src/deploy/r......

猫海豚
今天
0
0
Docker中Redis的安装

一、下载镜像 docker pull redis 二、创建外挂目录及配置 mkdir /opt/docker/redismkdir /opt/docker/redis/confmkdir /opt/docker/redis/data 三、安装 docker run -d --name compose_r......

闊苡訆涐囍醣
今天
0
0
JNI内存泄露处理方法汇总

在c++中new的对象,如果不返回java,必须用release掉,否则内存泄露。包括NewStringUTF,NewObject。如果返回java不必release,java会自己回收。   jstring jstr = env->NewStringUTF((*p)....

shzwork
今天
4
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部