- 博客(48)
- 收藏
- 关注
原创 C语言快速入门之动态内存管理
当他们创建时,空间开辟的大小是固定的,且创建好后,大小就无法调整,例如我们想描述某个班级的数学成绩,这个班级的学生有30人,我们写int arr[30],但有的班有26人,会有内存浪费,而有的班级有35人,导致了数组的越界那么,C语言是否允许程序员自己来动态的申请空间呢?这就是动态内存分配。
2024-04-01 18:18:17
721
原创 如何写出更加优质的C语言代码(1)
很多时候,我们需要给变量进行起名,很多时候,为了容易,新手很可能以a,b,c等多个符号,往往这只是在代码简短的时候,还是比较容易进行代码阅读的,但是当代码更加复杂的时候,我们可能会出现以下情况if()int a = 5;我们多次定义了变量a,可能会导致更改了前面的内容,后面我们进行代码阅读的时候也会出现困难因此,我们应该如何来命名呢?我的代码习惯是,类名和函数大写+小写,变量用小写+下划线,常量用大写+下划线;当然,我们尽量减少数字编号,例如arr1,arr2等。
2024-03-16 23:08:27
827
原创 C语言指针面试习题详解
a中,a代表整个数组吗,&a + 1代表跳过一整个数组后的地址,因此ptr指向的是5后面的那个地址,ptr - 1指向的是a[4]的地址,解引用是5,a + 1代表的是a[1]的地址,解引用是2,最后的结果是2,5。在二维数组a中,不要忘记逗号操作符,实际上,a存放的是{ {1,3}, {5,0}, {0,0} }2.在X86环境下,假设结构体的⼤⼩是20个字节,程序输出的结果是啥?这里ptr1指向的是跳过aa后的地址,ptr2指向的是6的地址。a是一个指针数组,pa指向的是a的第一个的地址。
2024-03-09 22:40:01
554
1
原创 电子科技大学课程《操作系统原理与实践》(持续更新)
电子科技大学2022本科操作系统的上课笔记和知识点总结,以及题目考核答案和解析,重点已标记
2024-02-26 21:57:34
1580
1
原创 编译原理第三章First集和Follow集以及LL(1)文法
将左递归的式子分为两个,第一个式子将含E的去掉,第二个式子在补上,实际就是将左递归转变为右递归的过程,我们会创建一个非终结符,不要忘记了空串。以此类推,就可以得到First集,如果推导的首字母是终结符,就是终结符符号,如果是非终结符,就看非终结符的推导。找First(E),就先看推导,推出来是非终结符T,然后看T的推导,F,看F的推导是(和i,因此,此时,U的follow也是W的follow,因此follow(W) = follow(U)LL(1)分析的实现:递归下降的分析,表驱动的分析。
2024-02-23 15:58:38
1560
原创 新手入门C语言之移位操作符和位操作符
C语言中移位操作符与位操作符的概念以及性质,其中涉及进制以及进制之间的相互转化,原码反码补码的书写,以及一些比较有特点的例题附带解析
2024-02-21 11:46:55
2177
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人