C语言
文章平均质量分 84
C语言的知识合集
Zer0_on
来日方长,何惧车遥马慢
展开
-
C语言数据在内存中的存储
超过一个字节的数据在内存中存储的时候,就有存储顺序问题,按照不同的存储顺序,分为大端字节序存储和小端字节序存储大端模式,是指数据的低位字节内容保存在内存的高地址处,而数据的高位字节内容,保存在内存的低地址处小端模式,是指数据的低位字节内容保存在内存的低地址处,而数据的高位字节内容,保存到内存的高地址处。原创 2024-09-30 18:28:04 · 914 阅读 · 0 评论 -
C语言内存函数
memcpy函数模拟实现对于重叠的内存,交给memmove处理。原创 2024-09-29 18:55:15 · 466 阅读 · 0 评论 -
C语言字符函数和字符串函数
c语言中有一系列的函数是专门做字符分类的,也就是一个字符是属于什么类型的字符,这些函数的使用都需要包含一个头文件是是能够判断参数部分的c是否是小写字母的.通过返回值来说明是否是小写字母,是小写字母返回非0,不是返回0写一个代码,将字符串中的小写字母转大写,其他字符不变。原创 2024-09-11 22:29:27 · 996 阅读 · 0 评论 -
C语言深入理解指针5
sizeof用来计算变量所占内存空间大小,单位是字节,操作数是类型的话,计算的是使用类型创建的变量所占空间的大小。原创 2024-09-09 21:55:05 · 509 阅读 · 0 评论 -
C语言深入理解指针4
回调函数是通过函数指针调用的函数将函数指针作为参数传递给另一个函数,当这个函数指针被用来调用其所指向的函数时,被调用的函数就是回调函数,回调函数不是应该由该函数的实现方直接调用,而是在特定的事件或条件发生时由另外一方调用的,用于对该事件或条件进行响应解释:只有调⽤函数的逻辑是有差异的,我们可以把调⽤的函数的地址以参数的形式传递过去,使⽤函数指针接收,函数指针指向什么函数就调⽤什么函数,这⾥其实使⽤的就是回调函数的功能,可以避免一些代码的冗余。原创 2024-09-08 21:54:07 · 653 阅读 · 0 评论 -
C语言深入理解指针3
在指针类型中char*是字符指针本质是将字符串的首字符地址存放在p中那根据上面的结论,下面代码的结果应该是什么?解释:这里的str1和str2是两个数组,只不过初始化的常量字符相同,但本质上还是两块不同的内存空间。str3和str4是字符指针,指向同一个常量字符串,在内存中两个相同的常量字符串只会保存一份,所以str3和str4指向的对象相同。原创 2024-09-07 14:37:48 · 1336 阅读 · 0 评论 -
C语言深入理解指针2
可以发现数组名和数组首元素地址的打印结果一样,因此,数组名就是数组首元素地址输出结果是40,但如果按上面的结论来,应该输出4/8数组名是首元素地址这个结论是对的,但对于以下两种情况是例外解释:&arr[0]表示首元素地址,&arr[0]+1表示跳过一个元素,是第二个元素的地址,因为该数组的元素是int类型,所以跳过4个字节,arr并不是两种例外情况的一种,所以表示数组首地址,arr+1表示跳过4个字节来到第二个元素地址,&arr表示整个数组的地址,数组的起始位置是首元素地址,所以打印结果是首元素地原创 2024-09-02 23:14:23 · 689 阅读 · 0 评论 -
C语言深入理解指针1
内存空间如何高效管理?把内存划分一个个的内存单元,每个内存单元的大小取一个字节一个比特位可以存储一个2进制的位1或者0,那么一个内存单元可以放8个比特位,每个内存单元都有一个编号,有了内存单元的编号,cpu就可以快速找到一个内存空间。这个编号也称为地址,c语言中给地址称为指针,也就是说。原创 2024-09-01 22:25:19 · 1257 阅读 · 0 评论 -
C语言青蛙跳台阶问题
可以看到上面递归的方法进行了大量重复运算,当数值不太大的时候就会运算很久,因此可以使用非递归方法,避免大量重复计算,从而提高代码效率。,根据这个点可以通过简单画图来求出一个规律性,设青蛙要跳上n级台阶,设func(n)为跳上n级台阶的跳法。可以看出,当n>2时,循环进行n-2次,每一次循环结束,n–, 直到n-2=0跳出循环,返回结果。青蛙有两种跳法,一种是跳到一级台阶,一种是跳上二级台阶。题目中最关键的点是青蛙。原创 2024-08-31 22:25:47 · 841 阅读 · 0 评论 -
C语言操作符
16进制的数字每一位是0-9,a-f的数字,各自写成2进制,最多有4个2进制位就足够了,比如f的二进制是1111,所以在2进制转16进制数的时候,从2进制序列中右边低位开始向左每4个2进制位会换算一个16进制位,剩余不够4个的二进制位的直接换算。8进制的数字每一位是0-7的,0-7的数字,各自写成2进制,最多有3个2进制位就足够了,比如7的二进制是111,所以在2进制转8进制数的时候,从2进制序列中最右边开始向左每三个2进制位会换算一个8进制位,剩余不够3个2进制位的直接换算。,分别每一位的权重是。原创 2024-08-30 23:51:43 · 1444 阅读 · 0 评论 -
C语言函数递归
递归是一种解决问题的方法,在C语言中,递归就是函数调用自己上面是一个简单的递归程序,不是为了解决问题,最终代码会死递归,导致栈溢出递归的思想把一个大型复杂问题层层转化为一个与原问题相似,但规模较小的子问题进行求解,直到子问题不能被拆分,递归结束,总之就是的过程递归中的的意思,的意思。原创 2024-08-30 06:22:28 · 805 阅读 · 0 评论 -
C语言VS调试
bug本意是昆虫或者虫子,现在一般是指在电脑系统或程序中隐藏着的一些未被发现的缺陷或问题.当我们发现程序中存在问题,下一步就是找到问题并解决,找问题的过程称为调试,英文叫debug(消灭bug的意思)调试一个程序,首先就是承认出现了问题,然后通过各种手段去定位问题的位置,可能是逐过程的调试,也可能是隔离和屏蔽代码的方式,找到问题所在的位置,然后确定错误产生的原因,修复代码,重新测试。原创 2024-08-28 09:01:56 · 1379 阅读 · 0 评论 -
C语言函数
ret_type fun_name(形式参数)解释函数一般会输入一些值,经过函数内计算,得出结果ret_type是函数返回类型,可以是void, 表示什么都不返回fun_name是函数名,为了方便调用,按需所取括号放的是形式参数,可以是void, 表示没有参数,有参数时,需交代清楚类型和名字和个数{}括起来的是函数体,是完成计算的过程实参,在上面代码中,前半部分是函数定义,后面部分调用函数,其传递给函数的参数a, b称为实际参数,简称实参(实际传递给函数的参数)判断闰年return 1。原创 2024-08-25 21:17:36 · 985 阅读 · 0 评论 -
C语言简易扫雷游戏的实现
如果我们排查了某个位置不是雷,需要把周围雷的信息打印出来,那这个信息就需要存放在固定位置,但如果存放在同一个数组,就会和雷的位置信息发生冲突,所以雷和非雷的信息可以使用字符并且存放在另一个专门数组show,就不会产生冲突,雷放在mine数组中,在mine中排查,show中存放排查数据,show数组开始初始化为"*",为了保持两个数组类型一致,可以使用同一个函数处理,mine数组开始初始化"0",布置雷时改为"1"扫雷的过程中需要存储布置雷和排查出雷的信息,所以需要一定的数据结构来存储,可以通过创建9。原创 2024-08-26 22:45:57 · 720 阅读 · 0 评论 -
C语言数组
下标从0开始,假设有n个元素,那么最后一个元素的下标是n-1如图如果我们要访问某个元素,可以通过下标访问操作符int main()//8//4。原创 2024-08-24 12:46:30 · 834 阅读 · 0 评论 -
C语言利用分支循环简单猜数字游戏的实现
游戏要求:1.电脑自动生成1-100的随机数2.玩家根据猜大或是猜小提示,猜数字直到猜对,游戏结束。原创 2024-08-23 11:01:22 · 345 阅读 · 0 评论 -
C语言数据类型与变量
数据类型包括内置类型和自定义类型两种。原创 2024-08-21 23:12:07 · 1141 阅读 · 0 评论 -
C语言常见基本概念
引入之前举个现实中的例子,众所周知人与人之间互相交流时有着各种不一样的语言,譬如汉语,英语,俄语等常见语言那么人与计算机之间的交流也注定使用专门的"计算机语言",目前已知的计算机语言已经上千种,当然不需要全部精通,例如:C/C++/Java/Go/Python 等都是常见的语言,接下来从C语言入手。首先在VS上写代码,需要创建项目,即新建项目,其次是在项目中添加源文件(. c文件)和头文件(. h文件)5.第一个C语言代码int main()return 0;原创 2024-08-20 21:45:01 · 747 阅读 · 0 评论 -
C语言分支循环
C语言是结构化的程序设计语言,这里的结构指的是顺序结构,选择结构,循环结构。可以使用if, switch 实现分支结构,使用for, while, do while实现循环结构。原创 2024-08-22 23:54:19 · 965 阅读 · 0 评论 -
从“0”开始
我是普通二本软件工程专业的一名女大学生,对于这门并不感兴趣,误打误撞进入了计算机世界,刚步入大学的人都会“疯”一年两年甚至更多,但当第一次意识到时间飞快是在大二开始,跟风开始学习专业课,但没多久便开始懒散跟不上,真正的学习是从大二下开始,即从"0"开始。原创 2024-08-20 13:04:37 · 122 阅读 · 0 评论