![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
超详细 C 语言个人笔记
文章平均质量分 81
从此不叫無名
路漫漫其修远兮 吾将上下而求索
展开
-
C语言实现2048小游戏
哈哈哈,我有点追求完美,我弄的东西一点要很完美,哪怕是一个小小的界面,我都会钻研几个小时。不过这也是我好久之前写的代码了,同志们也可以尝试自己去写一写,算是个C语言小项目!好了大概就是这个效果, 实现的核心逻辑我是用的递归算法,这里贴出一部分。那么这个界面图案是怎么打印出来的呢,废话不多说,直接贴代码。用递归的核心思想,实现C语言2048游戏!废话不多说,先上截图,看看效果。颜色是会改变的,是随机的。原创 2024-05-27 10:00:14 · 170 阅读 · 0 评论 -
超详细最全C语言个人笔记【第五章节-宏定义与条件编译】
ifndef 宏名...#else...endif#ifndef B#define B#endif1. 预定义日期和时间 __DATE__ __TIME__ 2. 函数名和当前行号__FUNCTION__ ___LINE__ 3. 文件名 __FILE__printf("日期:%s 时间:%s 当前文件:%s 当前行数:%d 函数名:%s\n",__DATE__,__TIME__,__FILE__,__LINE__,__FUNCTION__);// 打印行号。原创 2024-05-27 09:59:01 · 1080 阅读 · 0 评论 -
超详细最全C语言个人笔记【第五章节-头文件】
静态函数、宏定义、结构体、联合体的定义都只能在其所在的文件可见,因此如果多个源文件都需要使用的话,放到头文件中定义是最方便,也是最安全的选择。由于自定义的头文件一般放在源码文件的周围,因此需要在编译的时候通过特定的选项来指定位置,而系统头文件都统一放在标准路径下,一般无需指定位置。.c),当某些公共资源需要在各个源码文件中使用时,为了避免多次编写相同的代码,一般的做法是将这些大家都需要用到的公共资源放入头文件(其中,/home/gec/pro/inc 是自定义头文件 head.h 所在的路径。原创 2024-05-27 09:58:28 · 459 阅读 · 0 评论 -
超详细最全C语言个人笔记【第五章节-联合体与枚举】
/ 联合体声明union nodechar c;double a;int b;// 联合体声明并创建数据段空间unionchar c;double a;int b;}node1;// 计算联合体大小// 联合体不能使用普通成员初始化// 联合体指定成员初始化// 指定成员初始化的覆盖方式为从下往上覆盖,比如b会覆盖a// 和联合体的声明无关.c = 'k',.a = 3.14,.b = 97,// 联合体成员引用。原创 2024-05-27 09:58:08 · 328 阅读 · 0 评论 -
超详细最全C语言个人笔记【第五章节-结构体】
结构体 . 成员n.a = 200;n.b = 'y';n.c = 2.22;// 姓名// 年龄char sex;// 性别// 1. 申请栈空间// 先定义在使用,数组不能直接赋值// 字符串拷贝// 2. 申请堆空间return -1;// 结构体指针使用的是->// 释放空间free(pst);pst = NULL;return 0;3. 结构体指针与数组跟普通变量别无二致,可以定义指向结构体的指针,也可以定义结构体数组。原创 2024-05-27 09:57:08 · 897 阅读 · 0 评论 -
超详细最全C语言个人笔记【第四章节-函数】
在C语言中,函数意味着功能模块。一个典型的C语言程序,就是由一个个的功能模块拼接而成的整体。也因为如此,C语言被称为模块化语言。对于函数的使用者,可以简单的将函数理解为黑箱子,使用者只管按照规定给黑箱一些输入,就会得到一些输出,而不必要理会黑箱子里面的运行细节。 黑箱的输入和输出日常使用的电视机可以被理解为一个典型的黑箱子,它有一些公共的接口提供给使用者操作,比如开关、音量、频道等,使用者不需要理会其内部电路,更不需要管电视机的工作原理,只需要按照规定的接口操作得到结果即可。原创 2024-05-27 09:56:44 · 789 阅读 · 0 评论 -
超详细最全C语言个人笔记【第三章节-指针进阶[补充]】
void 一般运用在指针或者,函数的返回值,或者函数的参数传递,不能用在非指针的定义,比如 void a = 10;错误作业:1.复习今天的内容,并且自行敲一遍或多遍代码直到掌握为止2. 完成字符串逆序输出3. 预习const类型指针const 型指针const型指针有两种形式:①常指针 ②常目标指针常指针:const修饰指针本身,表示指针变量本身无法修改。常目标指针:const修饰指针的目标,表示无法通过该指针修改其目标。常指针在实际应用中不常见。原创 2024-05-27 09:56:04 · 899 阅读 · 0 评论 -
超详细最全C语言个人笔记【第三章节-指针】
地址。比如 &a 是一个地址,也是一个指针,&a 指向变量 a格式指针的尺寸概念:指向一块未知区域的指针,被称为野指针。野指针是危险的。很多情况下,我们不可避免地会遇到野指针,比如刚定义的指针无法立即为其分配一块恰当的内存,又或者指针所指向的内存被释放了等等。一般的做法就是将这些危险的野指针指向一块确定的内存,比如零地址内存。原创 2024-05-27 09:55:43 · 752 阅读 · 0 评论 -
超详细最全C语言个人笔记【第三章节-数组进阶[补充]】
语言只有在第一含义的场合下表现为数组,其他大部分场合都表现为首元素的地址,当数组表现为首元素地址时,实际上就是一个指向其首元素的指针。数组运算实际上就是指针运算。原创 2024-05-27 09:54:50 · 155 阅读 · 0 评论 -
超详细最全C语言个人笔记【第三章节-数组】
/把这个数组的内存图画出来,并且把数组的名字的地址,还有每个元素的地址都打印出来,每个元素的地址相差几个字节?1、定义一个二维数组,存入 5 个学生的数学、语文、英语、物理、化学 5 门课程的成绩,计算并输出每一门课程的平均成绩和每一位学生的平均成绩。**总结:**地址偏移+1是偏移一个对象类型的地址,比如char类型的地址+1是偏移1字节,int类型的地址+1是偏移4字节,依次类推。画出 该二维数组的内存图 , 数组的名字代表的地址范围 是哪个,还有 &str[1] [2] +2 代表的地址范围。原创 2024-05-27 09:53:59 · 1038 阅读 · 0 评论 -
超详细最全C语言个人笔记【第二章节-找的一些题目】
冰雹猜想最大的魅力,在于其不可预知性,数字N的转化过程变幻莫测,有些平缓温和,有些剧烈沉浮,但却都无一例外地会坠入4-2-1的谷底,这好比是一个数学黑洞,将所有的自然数牢牢吸住。一时间学生、教师、研究员、教授,甚至是一等一的数学大拿、天才都纷纷加入这个看似简单的数学游戏,人们取了各种各样的数字N去检验这个算法,最终都无一例外地坠入自然数序列4-2-1,于是就自然萌生出这样的猜想:对于任意非零自然数N,经上述变换最终都将落入4-2-1序列的宿命。【5】编写一个程序,将用户输入的天数转化为等价的星期数和天数。原创 2024-05-27 09:53:34 · 298 阅读 · 0 评论 -
超详细最全C语言个人笔记【第二章节-数据类型】
*以睁眼(1)闭眼(0)形式描述,整数,那英文呢?**原创 2024-05-26 20:00:23 · 904 阅读 · 0 评论 -
超详细最全C语言个人笔记【第一章节】
超详细C语言个人笔记【第一章节】原创 2024-05-26 19:27:32 · 2084 阅读 · 0 评论