C语言 - 下

作者: dotNET之家 | 来源:发表于2019-01-25 07:01 被阅读87次

总目录


前言

本文介绍以下内容:
一、动态内存分配与释放
二、 struct
三、union
四、enum
五、typedef

环境

1.VSCode

一、动态内存分配与释放

概述:动态内存分配可以在运行时为数组分配内存大小。

1.malloc和free

1.malloc函数用于内存分配,free函数用于释放内存;

2.malloc函数的参数是被分配内存的大小。

3.malloc函数分配成功返回指向被分配内存起始位置的指针,分配失败返回NULL。

4.malloc函数不能确定被分配的内存的数据类型,所以返回void *类型,即泛型指针,可以通过强制类型转换为指定类型的指针;

3.free函数的参数可以是NULL或malloc、calloc、realloc的返回值,调用free函数将会释放指针所指向的地址,若参数为NULL没有作用。

2.calloc与realloc

1.calloc函数也用于分配内存,realloc函数用于重新分配内存。

2.calloc函数的参数分别是元素个数和每个元素的字节数。

3.calloc函数在分配成功后,会将被分配内存的值设为0,malloc函数则不会。

4.realloc函数的参数分别是已分配内存的指针和新内存块的大小。

5.realloc函数扩大一块内存时,原先内存的内容将会保留,新增内容会保存在这些内容之后;缩小一块内存时,会丢失尾部内容,剩余内容会保留。

二、struct

struct:由一种或多种类型数据组成的组合型数据结构称为结构体。

1.结构体声明及变量定义的3种方式

方式1:先声明结构体,再定义变量
方式2:声明结构体,同时定义变量
方式3:不指定类型名,直接定义变量

结构体变量所占内存大小为各成员所占内存长度之和。

2.初始化结构体的3种方式

方式1:
方式2:
方式3:

3.结构体数组

4.结构体指针

三、union

union:使不同变量共享同一段内存的数据结构,称为共用体。

1.共用体声明及变量定义的3种方式

方式1:先声明共用体,再定义变量
方式2:声明共用体,同时定义变量
方式3:不指定类型名,直接定义变量

2.初始化共用体的3种方式及其使用

方式1:
方式2:
方式3:

1.共用体仅使用最后一次的赋值。

2.共用体变量所占内存的长度为最长成员所占内存的长度。

3.访问共用体中不同变量只能得到相应值类型字节大小的数据返回。

四、enum

enum:把可能的值一一列出,称为枚举。

枚举的使用

使用枚举,便于代码阅读。

五、typedef

typedef:使用指定类型名代替已有的类型名。

typedef的使用

尾声

简单介绍C语言。


总目录

相关文章

网友评论

    本文标题:C语言 - 下

    本文链接:https://www.haomeiwen.com/subject/sxjpjqtx.html