C语言
文章平均质量分 91
学习C语言基础详解
Ragef
认真生活
展开
-
C语言:自定义类型:联合体和枚举
联合体也是个自定义类型,它和结构体类似,都是由多个成员构成,可以有不同的内置类型。2. 当最大成员的大小不是最大对齐数的整数倍的时候,就要对齐到最大对齐数的整数倍。这样我们就可以在枚举作用的范围内直接使用它的成员作为值了,跟宏定义类似。联合体之所以叫联合体,是因为它里面的成员会重复使用一块内存空间。这里的char c 是会和 int i 共用一块空间的,如图。要调整到最大对齐数的整数倍,这里不难看出最大对齐数为4。所以联合体的大小至少是最大成员14个字节的大小。1. 联合体的大小至少是最大成员的大小。原创 2024-03-25 22:24:43 · 768 阅读 · 0 评论 -
C语言:自定义类型:结构体
C语言中有很多种类型,例如:int ,float ,char ,double, long ,long long ,long double等等,这些叫C语言的内置类型但是有的时候描述一个人或物只用某一个类型是明显不够的这时候C语言提供了自定义类型:结构体。原创 2024-03-22 00:18:50 · 923 阅读 · 1 评论 -
C语言:文件操作的详解(看完一定有更深刻的理解)
在我们进行C语言编程时,我们每次运行的代码虽然都会出结果,但是我们并不能保存下来,所以如果我们需要保存下来得学习文件的操作文件几乎是每个项目里都需要的东西,因为我们的项目运行的时候都需要保存数据,甚至需要从文件里读取数据,比如一个学生管理系统做完之后,使用者总需要用这个系统将所有学生的信息输入到电脑里,但是总不能输入不保存吧,所以需要使用一个文件保存,在下次使用的时候又可以从这个文件里读取数据,从而进行增删改查等等功能所以文件的学习是非常有必要的。原创 2024-03-27 20:15:53 · 971 阅读 · 0 评论 -
ctype.h的了解,string.h库函数、memcpy,memmove函数的使用和模拟实现,
如果str1大于str2,返回大于0的数字,str1小于str2,返回小于0的数字(具体什么数字不做要求)如果我们从str1中找str2的时候,发现了第一个l,那么往后走发现第二个不是o的时候,我们如何返回呢?该函数的作用是可以将一个字符串的内容拷贝到另一个字符串中,以需要拷贝的字符串中的'\0'作为标志结束。因为我们如果只有str1和str2就算能够找到str1中的str2也无法后退返回原来的地址了。str2判断完str1的ll不是lo的时候str2又怎么返回到str2的起始地址l中呢?原创 2024-03-16 16:53:28 · 830 阅读 · 2 评论 -
C语言:预处理详解
C语言中设置了一些预定义符号,可以直接使用__FILE__ //进⾏编译的源⽂件__LINE__ //⽂件当前的⾏号__DATE__ //⽂件被编译的⽇期__TIME__ //⽂件被编译的时间__STDC__ //如果编译器遵循ANSI C,其值为1,否则未定义FILE表示当前文件的路径LINE表示当前的行号DATE表示当今日期TIME表示具体时间STDC为1我们来测试一下int main()return 0;原创 2024-03-30 18:53:23 · 963 阅读 · 0 评论 -
数据在内存中的存储
对于64位的浮点数(double),最高1位存储S,接着11位存储指数E,剩下的52位存储有效数字M。对于32位的浮点数(float),最高1位存储S,接着8位存储指数E,剩下的23位存储有效数字M。大端存储模式:指数据的低位字节内容保存在内存的高地址处,高位字节内容保存在内存的低地址处。小端存储模式:指数据的低位字节内容保存在内存的低地址处,高位字节内容保存在内存的高地址处。(-1)^S 表示符号位,当S = 0,V为正数,S = 1,V为负数。符号位不变,其他位依次按位取反即可(0变1,1变0)原创 2024-03-18 23:32:55 · 779 阅读 · 0 评论 -
C语言:编译和链接
先来看看我们运行程序时程序内部发生了什么编译和链接的环节叫翻译环境可执行程序到输出结果的环节叫运行环境。原创 2024-03-30 00:06:21 · 434 阅读 · 0 评论 -
C语言:动态内存管理(malloc,calloc,realloc,free)
在这一章节将讲解动态内存分配,它可以在程序的堆区创建一块内存,在这块内存中存什么值就是由自己决定的了开辟的空间有两个特点:1. 空间开辟的大小是固定的2. 数组在声明时必须指定长度,数组的大小一旦确定就不能调整在使用这些函数之前我们需要包含他们头文件。原创 2024-03-26 23:10:36 · 1422 阅读 · 1 评论 -
C语言:贪吃蛇游戏(万字解读超详细)
贪吃蛇这个游戏应该我们小时候都玩过吧我相信能够点进这个博客的应该都很熟悉这个游戏了如果对这个游戏不熟悉的可以网上查查怎么玩,这样才能对这个游戏有个清晰的认知该篇博客需要拥有C语言基础(对指针熟悉、会链表的使用)下面我们需要先学习一些C语言之外的东西认真坚持看完,我相信你一定能完成这个接近500行的C语言贪吃蛇项目该类型内部封装了两个成员,一个x,一个y,代表坐标我们可以将我们的控制台理解为一个平面坐标图横向正方向是x轴正方向,竖向负方向是y轴正方向。原创 2024-04-20 16:54:01 · 3427 阅读 · 2 评论