![](https://img-blog.csdnimg.cn/20190918140012416.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
c
文章平均质量分 74
学习
可乐不解渴
这个作者很懒,什么都没留下…
展开
-
预处理
预处理详解原创 2021-03-30 17:00:05 · 143 阅读 · 3 评论 -
动态通讯录
文章目录功能如下初始化通讯录添加联系人删除联系人查找联系人修改指定联系人显示联系人对联系人按姓名排序清空联系人完成代码如下:功能如下初始化通讯录首先,我们知道通讯录中的每个联系人的信息至少包括:姓名、年龄、性别、电话和住址。我们把这些练习人的特点,用一个结构体来描述://各个数据的最大容量enum Max{ Name_Max = 20, Sex_Max = 6, Tele_Max = 12, Addr_Max = 30,};//联系人信息结构体struct PeoInfo{ c原创 2021-03-28 10:50:37 · 1032 阅读 · 6 评论 -
动态内存管理
动态内存管理为什么存在动态内存分配动态内存函数1.malloc2.calloc3.realloc4.free为什么存在动态内存分配我们最熟悉内存开辟方式有: int val = 20;//在栈空间上开辟四个字节 char arr[10] = {0};//在栈空间上开辟10个字节的连续空间但是上述的开辟空间的方式有两个特点:空间开辟大小是固定的。数组在申明的时候,必须指定数组的长度,它所需要的内存在编译时分配。但是对于空间的需求,不仅仅是上述的情况。有时候我们需要的空间大小在程序运行的时原创 2021-03-23 17:21:48 · 895 阅读 · 5 评论 -
结构体、联合体与枚举
结构体、联合体与枚举1. 结构体1.1 结构体类型的声明1.2 结构体变量的定义和初始化1.3 结构体内存对齐1.4 结构体传参1.5 结构体实现位段2. 枚举2.1 枚举类型的定义3. 联合体3.1 联合体类型的定义3.2 联合体类型的特点3.3 联合体大小的计算1. 结构体定义:结构体是由一批数据组合而成的一种新的数据类型。组成结构型数据的每个数据称为结构型数据的“成员”。1.1 结构体类型的声明例如下面我声明了一个学生结构体类型描述学生:属性-名字+电话+性别+年龄struct S原创 2021-03-09 00:49:17 · 394 阅读 · 2 评论 -
C语言字符、内存函数功能及实现
C语言字符、内存函数功能及实现strlen函数模拟实现strcpy函数模拟实现strcat函数模拟实现strcmp函数模拟实现strncpy函数模拟实现strncat函数模拟实现:strstr函数模拟实现strtok函数运用strerror函数运用iscntrl函数运用tolower函数运用touppe函数运用memcmp函数运用模拟实现memmove函数运用模拟实现memset函数运用strlen函数函数原型:size_t strlen ( const char * str );功能:求字符串长度,原创 2021-02-09 18:15:01 · 273 阅读 · 1 评论 -
5分钟深刻理解sizeof和strlen
深刻理解sizeof和strlen的区别一、sizeof和strlen是什么?二、案例分析Part 1.2.总结一、sizeof和strlen是什么?sizeof是运算符关键字不是函数,功能是返回一个变量或者类型的大小。而strlen是库函数,函数求的是字符串的长度。二、案例分析在看下面的案例前先要理解下面几句话,才好进行下面案例的环节:1.数组名单独放在sizeof()内部,数组名表示整个数组,计算的是整个数组的大小,单位是字节2.&数组名,数组名表示整个数组,取出的是整个数组的地址原创 2021-02-09 16:03:04 · 1588 阅读 · 4 评论 -
C语言qsort()库函数
part 1 认识qsort()函数qsort()库函数原型如下:/*void* base----指向待排序数据的起始位置的一个指针size_t size---- 由base指向的数组中元素的个数。size_t width----数组中每个元素的大小,以字节为单位 int(__cdecl *compare )(const void *elem1, const void *elem2 )----用来比较两个元素的函数,即函数指针(函数回调)*/void qsort( void *base, si原创 2021-02-02 23:00:13 · 355 阅读 · 1 评论 -
C语言运算符、整形提升、截断及整形浮点型存储
C语言运算符、整形提升与截断文章目录C语言运算符、整形提升与截断前言part 1.位运算操作符part 2.整形提升与截断part 3.计算器的大小端何为大小端part 4.数据存储-浮点型前言1.首先需要了解整数储存的机制;2.原码、反码、补码之间的关系;2.(1)正整数原码、反码、补码相同,直接进行二进制转换就可;(2^32-1个正整数)2.(2)负整数32位的首位为符号位(1代表负数);(2^31-1个符数)我们来说个例子,例如:-1首先写出-1的补码为:1000 0000 0000原创 2021-02-01 23:49:43 · 2428 阅读 · 1 评论