![](https://img-blog.csdnimg.cn/5a21a3aae3854ad4b4809d0a1c177c60.jpeg?x-oss-process=image/resize,m_fixed,h_224,w_224)
c语言
文章平均质量分 91
此专栏包含c语言的基本语法和进阶知识
不穿格子衬衫
分享日常学习心得
展开
-
c语言:文件操作
磁盘上的文件是文件。但是在程序设计中,我们一般谈的文件有两种:程序文件、数据文件(从文件功能的角度来分类的)。原创 2024-06-09 22:50:47 · 1960 阅读 · 53 评论 -
c语言:自定义类型(结构体)
有了结构体类型,那如何定义变量,其实很简单。int x;int y;}p1;//声明类型的同时定义变量p1//定义结构体变量p2//初始化:定义变量的同时赋初值。struct Stu //类型声明//名字int age;//年龄//初始化int data;//结构体嵌套初始化//结构体嵌套初始化//书名//作者//编号//价格int main()struct book s1 = { "c语言","谭浩强","THQ3324",55.5f };//原创 2024-06-02 17:27:12 · 996 阅读 · 20 评论 -
(超详细)字符函数和字符串函数【上】
strlen函数是一个求字符串长度的函数,内部的工作原理是只要不遇到\0就一直向后走并记数,遇到\0就停下。原创 2024-05-29 20:41:43 · 1267 阅读 · 16 评论 -
c语言:摆脱对指针的恐惧【2】
伙伴们好久不见,这一期是我们指针的第二期,上一期指针收到了不错的反馈,我能感受的小伙伴们学习的热情,话不多说,我们马上开始这一期的内容吧。在学习新知识之前,也不要忘记复习学过的知识,上一期我们讲了指针就是地址,人们口中的指针就是,被称为指针变量,指针变量指向某个变量的首地址,还讲了指针变量分不同类型的意义是,我们还讲了&(取地址符)可以对,*(解引用符)可以。原创 2024-05-20 15:51:54 · 908 阅读 · 3 评论 -
c语言:摆脱对指针的恐惧【4】
在上一期指针我们讲到了二级指针是的作用是存放一级指针的地址,还讲了指针数组是一个可以存放若干个指针变量的数组,这里我们再复习一下,下面指针数组是什么意思?上面三行代码都分别定义了一个数组,第一行代码的arr1数组存放了10个int类型的指针变量 ,第二行代码的arr2数组存放了4个字符类型的指针变量,第三行代码的arr3数组存放了三个二级字符类型的变量,复习完上一期学过的内容,我们马上开始这一期内容的学习吧。原创 2024-05-25 04:47:49 · 1127 阅读 · 5 评论 -
c语言:摆脱对指针的恐惧【3】
接上一期我们讲到了野指针的概念,野指针的成因和避免野指针的方法,又讲了指针的运算,今天我们接着讲指针新的内容,指针的每一章都很重要,今天也不要忘记学习。原创 2024-05-22 00:15:25 · 845 阅读 · 5 评论 -
扫雷游戏:c语言实现
游戏规则:进入游戏界面,按1开始游戏,按0退出游戏,我们在一个9×9的棋盘中布置了10个地雷,玩家任务是找出所有空白区域,找出所有空白区域,玩家胜利,如果踩到雷则游戏失败,每找出一个空白区域,该空白区域都会提示周围有几个雷,玩家正是通过这个信息一步步找出所有空白区域的。那么我们该如何去实现它呢,首先,我们要创建一个主函数,一个测试函数test,再创建一个打印游戏初始页面的函数menu,按1玩游戏,按零退出游戏,如果是其他数字,则显示输入错误,必须重新输入:那么test函数是怎么实现的呢?原创 2024-05-10 23:22:45 · 723 阅读 · 10 评论 -
(超详细)字符函数和字符串函数【下】
在上一期我们介绍了长度不受限制的字符串函数,这一期我们接着讲长度受限制的字符串函数等内容。原创 2024-05-30 18:07:45 · 1289 阅读 · 12 评论 -
c语言:摆脱对指针的恐惧【5】
上一期我们讲了数组指针、&数组名和数组名的区别是&数组名是指整个数组的地址,而数组名仅表示数组首元素地址,对他们加一的结果也大不相同,我们还讲了一维数组和二维数组传参的原理及一级指针和二级指针传参的原理,复习完上一期的内容,我们马上开始这一期的内容吧。原创 2024-05-28 00:25:19 · 1323 阅读 · 8 评论 -
c语言:动态内存管理
include<stdlib.h>//包含malloc函数的头文件int main()return 0;malloc函数返回的是void*类型的指针,所以我们的方法是将它强制转换成int*类型的指针再赋给p,这样我们的10个int类型的空间就用malloc函数开辟好了。这个函数向内存申请一块连续可用的空间,并返回指向这块空间的指针。1.如果开辟成功,则返回一个指向开辟好空间的指针。2.如果开辟失败,则返回一个NULL指针,因此malloc的返回值一定要做检查。原创 2024-06-05 19:54:00 · 1490 阅读 · 46 评论 -
c语言:自定义类型(枚举、联合体)
位段的声明和结构是类似的,有两个不同:1.位段的成员必须是 int、unsigned int 或signed int。2.位段的成员名后边有一个冒号和一个数字。int _b:5;int _c:10;int _d:30;A就是一个位段类型。那位段A的大小是多少?这就不得不介绍以上的代码是什么意思了,_a后面的2表示我们只给_a 变量分配两个比特位的空间,以此类推,后面的5、10、30都是给各自变量分配了该数量的比特位的空间,这是为什么呢?原创 2024-06-04 12:47:49 · 1313 阅读 · 23 评论 -
c语言:递归与迭代
它却没有得出结果,这是为什么呢,因为,函数在内部多次调用了自己,产生了大量的重复计算,导致计算量巨大,代码执行效率非常低,让计算机也无法快速得出结果,这个例子告诉我们,递归是有使用条件的 ,如果要设计一个需要重复计算的程序,不能无脑使用递归,而是首先要思考递归能不能用,是否能让代码简洁的同时,更加高效,那么此类例子我们如何解决呢?可以看到,很快就得到了结果,但是答案是错误的,因为要求的数太大,一个字节无法表示,但是我们可以很直观的看见两者的差别,在这这样一个例子中,使用迭代会优于使用递归。原创 2024-05-14 18:02:02 · 1166 阅读 · 8 评论 -
c语言:摆脱对指针的恐惧【1】
指针的类型决定了,对指针解引用的时候有多大的权限(能操作几个字节)。比如:char*的指针解引用就只能访问一个字节,而int*的指针的解引用就能访问四个字节。我们这一期的指针就到此结束啦, 我们下期不见不散,未完待续。。。。。。。原创 2024-05-18 00:28:02 · 2009 阅读 · 7 评论 -
(含笔试题)深度解析数据在内存中的存储
在c语言中,有像许许多多的数据类型,我们学过之后只需要使用就可以了,不关心它的内部是如何实现的,因此,有时我们写出的一些代码出现的结果是我们自己无法预料的,也许这样的问题正是由于我们不了解数据内部是如何存储和取出所导致的,今天,我们就来详细介绍数据在内存中是如何存储的,重点从整型与浮点型来展开介绍。大端(存储)模式,是指数据的低位保存在内存的高地址中,而数据的高位,保存在内存的低地址 中;小端(存储)模式,是指数据的低位保存在内存的低地址中,而数据的高位,,保存在内存的高地 址中。原创 2024-06-01 11:15:34 · 1193 阅读 · 17 评论