c语言
文章平均质量分 80
我望海风
这个作者很懒,什么都没留下…
展开
-
深入理解c语言指针(二)
这里我们发现&arr[0]和&arr[0]+1相差4个字节,arr和arr+1 相差4个字节,是因为&arr[0] 和 arr 都是首元素的地址,+1就是跳过一个元素。数组是可以传递给函数的,这个小节我们讨论一下数组传参的本质。• sizeof(数组名),sizeof中单独放数组名,这里的数组名表示整个数组,计算的是整个数组的大小,• &数组名,这里的数组名表示整个数组,取出的是整个数组的地址(整个数组的地址和数组首元素。的时候,传递的是数组名,也就是说本质上数组传参本质上传递的是数组首元素的地址。原创 2023-12-03 21:03:22 · 1036 阅读 · 0 评论 -
深入理解c语言指针(一)
我们可以简单理解,32位机器有32根地址总线,每根线只有两态,表示0,1【电脉冲有无】,那么一根线,就能表示2种含义,2根线就能表示4种含义,依次类推。x的地址是0x00cffcec,y的地址是0x00cffcf0,x和y确实接收到了a和b的值,不过x的地址和a的地址不。其实这里是把a的修改交给了pa来操作,这样对a的修改,就多了一种的途径,写代码就会更加灵活, 后期慢慢就能理解了。我们发现在main函数内部,创建了a和b,a的地址是0x00cffdd0,b的地址是0x00cffdc4,在调用。原创 2023-12-02 21:09:52 · 1365 阅读 · 1 评论 -
C语言编程常见错误
编译型错误⼀般都是语法错误,这类错误⼀般看错误信息就能找到⼀些蛛丝⻢迹的,双击错误信息也。能初步的跳转到代码错误的地⽅。编译错误,随着语⾔的熟练掌握,会越来越少,也容易解决。看错误提⽰信息,主要在代码中找到错误信息中的标识符,然后定位问题所在。运⾏时错误,是千变万化的,需要借助调试,逐步定位问题,调试解决的是运⾏时问题。原创 2023-10-10 14:14:30 · 52 阅读 · 1 评论 -
c语言实现扫雷小游戏
再继续分析,我们在棋盘上布置了雷,棋盘上雷的信息(1)和⾮雷的信息(0),假设我们排查了某⼀个位置后,这个坐标处不是雷,这个坐标的周围有1个雷,那我们需要将排查出的雷的数量信息记录存储,并打印出来,作为排雷的重要参考信息的。这⾥我们肯定有办法解决,⽐如:雷和⾮雷的信息不要使⽤数字,使⽤某些字符就⾏,这样就避免冲突了,但是这样做棋盘上有雷和⾮雷的信息,还有排查出的雷的个数信息,就⽐较混杂,不够⽅便。扫雷的过程中,布置的雷和排查出的雷的信息都需要存储,所以我们需要⼀定的数据结构来存储这些信息。原创 2023-09-11 18:55:46 · 40 阅读 · 0 评论 -
c语言中的static和extern
其实static 修饰函数和static修饰全局变量是⼀模⼀样的,⼀个函数在整个⼯程都可以使⽤,被static修饰后,只能在本⽂件内部使⽤,其他⽂件⽆法正常的链接使⽤了。中,我们从输出结果来看,i的值有累加的效果,其实test函数中的i创建好后,出函数的时候是不会销毁的,重新进⼊函数也就不会重新创建变量,直接上次累积的数值继续计算。是⽤来声明外部符号的,如果⼀个全局的符号在A⽂件中定义的,在B⽂件中想使⽤,就可以使⽤extern进⾏声明,然后使⽤。代码1是能够正常运⾏的,但是代码2就出现了链接错误。原创 2023-09-10 10:00:16 · 203 阅读 · 1 评论 -
C语言入门之函数详解
了解了库函数,我们的关注度应该聚焦在⾃定义函数上,⾃定义函数其实更加重要,也能给程序员写代码更多的创造性。⼀般我们在使⽤函数的时候,直接将函数写出来就使⽤了。⽐如:我们要写⼀个函数判断⼀年是否是闰年。上⾯代码中橙⾊的部分是函数的定义,绿⾊的部分是函数的调⽤。这种场景下是函数的定义在函数调⽤之前,没啥问题。//判断⼀年是不是闰年int main()int y = 0;printf("闰年\n");elseprintf("⾮闰年\n");return 0;return 1;原创 2023-09-09 16:55:50 · 154 阅读 · 1 评论 -
浅谈C99中的变⻓数组
上⾯⽰例中,数组arr 就是变⻓数组,因为它的⻓度取决于变量n的值,编译器没法事先确定,只有运⾏时才能知道n是多少。它的好处是程序员不必在开发时,随意为数组指定⼀个估计的⻓度,程序可以在运⾏时为数组分配精确的⻓度。有⼀个⽐较迷惑的点,变⻓数组的意思是数组的⼤⼩是可以使⽤变量来指定的,在程序运⾏的时候,根据变量的⼤⼩来指定数组的元素个数,⽽不是说数组的⼤⼩是可变的。在C99标准之前,C语⾔在创建数组的时候,数组⼤⼩的指定只能使⽤常量、常量表达式,或者如果我们初始化数据的话,可以省略数组⼤⼩。原创 2023-09-08 19:14:39 · 61 阅读 · 0 评论 -
C语言算法之二分查找详解
首先,假设表中元素是按升序排列,将表中间位置记录的关键字与查找关键字比较,如果两者相等,则查找成功;否则利用中间位置记录将表分成前、后两个子表,如果中间位置记录的关键字大于查找关键字,则进一步查找前一子表,否则进一步查找后一子表。重复以上过程,直到找到满足条件的记录,使查找成功,或直到子表不存在为止,此时查找不成功。⼀般你都会猜中间数字,⽐如:150,然后看⼤了还是⼩了,这就是⼆分查找,也叫折半查找。(1) 如图假设要查找数字7,首先确定最左边和最右边的下标元素,分别名为left,right。原创 2023-09-06 19:02:40 · 109 阅读 · 0 评论 -
详解用c语言实现猜数字游戏
今天我们写⼀个稍微有趣的代码,⽐如:写⼀个猜数字游戏。原创 2023-09-01 17:04:09 · 558 阅读 · 0 评论 -
详解用C语言实现素数判断
c语言入门之素数判断原创 2023-08-31 15:44:53 · 1065 阅读 · 0 评论