![](https://img-blog.csdnimg.cn/20201014180756913.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
c语言
文章平均质量分 88
碳酸不酸鸭
The gains offset the losses.
展开
-
文件操作+相关函数的使用
计算机里的文件是一种数据存储单元,用于存储文本、图像、音频、视频、程序以及其他类型的数据。它们通过文件名来进行识别和访问。1.硬盘驱动器(机械硬盘):硬盘驱动器(机械硬盘)是计算机中常见的传统意义上的主要存储设备,它们提供了大容量的存储空间用于存储文件和数据。大多数操作系统和应用程序都安装在硬盘驱动器上。2.固态硬盘:固态硬盘(SSD)是一种基于闪存存储介质的存储设备,它比传统机械硬盘(硬盘驱动器)提供更快的数据访问速度和更高的性能。3.光盘。原创 2023-10-28 14:09:58 · 172 阅读 · 0 评论 -
编译和链接
经过预处理后的.i文件中不再包含宏定义,因为宏已经被展开。并且包含的头文件都被插入到.i文件中。所以当我们无法知道。原创 2023-10-28 14:09:22 · 70 阅读 · 0 评论 -
结构体+联合体+枚举
1. 位段的成员必须是 int、unsigned int 或signed int ,在C99中位段成员的类型也可以选择其他类型。2. 位段的成员名后边有⼀个冒号和⼀个数字。int _b:5;int _c:10;int _d:30;这里的数字代表的是比特位(bit)原创 2023-10-19 00:21:58 · 111 阅读 · 0 评论 -
数据在内存中的存储
这时,浮点数的指数E等于1-127(或者1-1023)即为真实值,有效数字M不再加上第⼀位的1,而是还原为0.xxxxxx的小数。b.E的存储:存储E时要加上中间数(因为科学计数法中指数可能为负,但E应该为一个无符号整数),8位E的中间数位27,11位E的中间数为1023。大端(存储)模式:是指数据的低位字节内容保存在内存的高地址处,而数据的高位字节内容,保存在内存的低地址处。小端(存储)模式:是指数据的低位字节内容保存在内存的低地址处,而数据的高位字节内容,保存在内存的高地址处。原创 2023-10-06 16:14:15 · 281 阅读 · 3 评论 -
字符函数和字符串函数
destination中的结束null字符被source的第一个字符覆盖,并且在destination中由两者串联形成的新字符串的末尾包含一个空字符。destination中的结束null字符被source的第一个字符覆盖,并且在destination中由两者串联形成的新字符串的末尾包含一个空字符。4.strtok函数的第⼀个参数不为 NULL ,函数将找到str中第⼀个标记,strtok函数将保存它在字符串中的位置。2.第⼀个参数指定⼀个字符串,它包含了由sep字符串中⼀个或者多个分隔符分割的标记。原创 2023-09-23 13:06:23 · 41 阅读 · 1 评论 -
指针p3(几种指针类型)
本质是把字符串 hello bit. 首字符的地址放到了pstr中,因为字符串可以看作是一个存放字符的数组,整个字符串的内容可以看作数组名,数组名即代表首元素的地址。*表示pf是一个指针,void表示指针所指向的函数的返回类型,(int x,int y)表示函数的参数的类型)这里的*表示p是一个指针,二者结合,[]中的10表示指向的数组中元素的个数int则表示指向的数组中元素的类型。此外,还要注意,str1.2是数组(名)/(数组首元素地址),而str3.4是指向字符串常量的指针。⼆维数组起始可以看做是。原创 2023-09-12 22:21:25 · 44 阅读 · 0 评论 -
指针笔记p2(数组名)
函数中的arr表示首元素地址,sizeof(arr)则是求地址所占内存的大小,x64环境下为8字节,x86环境下为4字节。由此观之,‘’&arr[0]‘’得到首元素地址,‘’arr‘’也表示首元素地址,二者以地址形式打印得到结果相同。指针变量也是变量,是变量就有地址,那指针变量的地址存放在哪里?可以看出,数组名+1,跳过了4个字节(1个元素),而&(数组名)+1,跳过了。数组名表示整个数组**,计算的是整个数组的大小,单位是字节(byte)。数组元素的访问在编译器处理的时候,也是转换成首元素的地址+偏移。原创 2023-09-10 17:23:44 · 46 阅读 · 1 评论 -
指针笔记p1
数据在内存中以bit形式存储,每8个bit成为1byte(字节),而每字节都可以看作一个小空间。这个空间会被赋予特定的编号,方便后续通过这个编号访问到相应字节(空间)里的元素。指针就是内存中某个元素的地址。内存单元的编号 == 地址 == 指针概念: 野指针就是指针指向的位置是不可知的(随机的、不正确的、没有明确限制的)指针。原创 2023-09-06 19:41:12 · 191 阅读 · 1 评论 -
操作符和三码(原反补)
-------------------------------------------逻辑右移---------------------------------------------------------------------------------------------算数右移-------------------------------------------------思路:将二进制1逐次左移,并按位与原数,如原数二进制位该位为0,则得到的值为0,如原数二进制该位为1,则得到的值为1。原创 2023-08-06 19:56:47 · 95 阅读 · 0 评论 -
扫雷进阶之C语言实现(保姆级教程)
扫雷的玩法:在一个9×9(初级)、16×16(中级)、30×16(高级)或自定义大小的方块矩阵中随机布置一定量的地雷(初级为10个,中级为40个,高级为60个),再由玩家逐个翻开方块,以找出所有地雷为最终游戏目标。如果玩家翻开的方块有地雷,则游戏结束。1. 在已经准备好的棋盘中,找出所有没有设有雷的位置,找出所有位置后,既获得胜利。2. 该游戏设有三种难度等级,分别是简单、中级和困难模式,每种模式的棋盘大小和雷的数目都不一样。3. 踩到雷即游戏失败。200余行代码解决扫雷进阶问题。原创 2023-08-03 19:59:03 · 392 阅读 · 5 评论 -
vs实用调试技巧
以便⽤⼾很好地使⽤。当程序员写完代码,测试再对程序进⾏测试,直到程序员的质量符合交付给⽤户使⽤的标准,这个时候就会设置release,编译产⽣的就是release版本的可执⾏程序,这个版本是⽤⼾使⽤的,通常称为调试版本,它包含调试信息,并且不作任何优化,便于程序员调试程序。程序员在写代码的时候,需要经常性的调试代码,就将这⾥设置为debug,这样编译产⽣的是debug版本的可执⾏程序,栈区中先使用高地址再使用低地址,越先创建的变量地址越高。称为发布版本,它往往是进⾏了各种优化,使得程序在代码。原创 2023-08-01 20:12:37 · 45 阅读 · 1 评论 -
笔记(查漏补缺)
• %i :整数,基本等同于 %d。• %g :6个有效数字的浮点数。整数部分⼀旦超过6位,就会⾃动转为科学计数法,指数部分的 e为⼩写。• %G :等同于 %g ,唯⼀的区别是指数部分的 E 为⼤写。• %ld :⼗进制 long int 类型。• %lo :⼋进制 long int 类型。• %lx :⼗六进制 long int 类型。• %lu :unsigned long int 类型。• %lld :⼗进制 long long int 类型。原创 2023-07-23 17:38:20 · 62 阅读 · 0 评论 -
二分查找算法的c语言(函数)实现
int binary_search(int arr [ ] , int k , int sz) //函数的定义和实现 {//定义左右下标 while(left arr [ mid ]) //情况1:这个数大于目标数,说明目标数在这个数与左值(首元素)之间。那么就将这个数减一并赋给右下标。} else if(arr [ mid ] < k) //情况2:这个数小于于目标数,目标数则在这个数与右值(末元素)之间。那么就将这个数加一并赋给左下标。原创 2023-07-21 18:17:03 · 440 阅读 · 0 评论