C & C++
记录C与C++中仍需了解的细节。
LanderXX
这个作者很懒,什么都没留下…
展开
-
雷课堂(THUnderClass)——清华大学2020C++大作业个人项目记录与总结
文章目录声明正文设计架构总述/THUnderClient/THUnderServer需求分析 & 实现方案幕后的几处细节小结更好的阅读体验:个人博客声明本文是博主个人对清华大学2020年自动化系《C++程序设计与训练》课程(以下简称“课程”)大作业(以下简称“大作业”)——雷课堂项目的完成记录与总结。博主仅为一名修习了此课程的学生,以个人名义记录。个人能力浅薄、经验欠缺,言辞、代码若有不妥以至纰漏处,欢迎批评指正!本文将仅对大作业的完成过程和个人的粗浅思考过程进行记述,不再对大作业本身原创 2020-07-14 09:42:56 · 13005 阅读 · 26 评论 -
指针入门级
区别 * 和 & 的两种意思1:int a = 1;int *p = &a; * 作为说明符,说明这个变量p是指针变量,这一点和任何变量的声明逻辑都不同,说明在变量名前进行而不是数据类型处进行。2:printf("%d", *p); * 作为运算符,进行取内容运算。1:...原创 2019-08-05 00:21:04 · 221 阅读 · 0 评论 -
变量生存期和储存类型
生存期:全局变量:生存期和程序一致;作用域为从声明处至程序结束;动态局部变量:(是指语句块内声明的变量,包括函数形参)从声明到代码块的右大括号;储存类型:(指编译器为变量分配内存的方式,决定变量的生存期)auto-----自动变量(default):动态变量。初始化默认为0。static----静态变量:作用域同动态局部变量,生存期为整个程...原创 2019-08-07 12:10:50 · 488 阅读 · 0 评论 -
C++ :: 内联函数inline
和#define类似,inline声明的函数将被编译器拿来替换掉调用处的语句注:一般只将那些频繁被调用的、代码量很少的函数定义为内联函数。内联函数中不允许有循环或switch,否则按普通函数处理。...原创 2019-08-07 15:43:58 · 194 阅读 · 0 评论 -
C++ :: 函数重载 & 缺省形参
函数重载:若有两个及以上的同名函数,但形参的类型或个数不同,编译器会根据实参的类型和个数来匹配最佳的那个函数但形参的命名、返回类型不同不能区分函数缺省形参:如:int add(int x = 5, int y = 6) { return x + y;}int main() { int a = add(); //11 int b = a...原创 2019-08-07 15:40:21 · 345 阅读 · 0 评论 -
C++ :: new & delete动态分配内存
使用new关键字可以直接写出所需类型,自动计算内存大小。举例既已int *p;p = new int[10];if(!p) { //p == NULL printf("Fail\n"); exit(1);}*(p + 1) = 1;printf("%d\n", p[1]);delete []p;p = new int(10086); //ini...原创 2019-08-07 15:16:21 · 236 阅读 · 0 评论 -
C语言 :: m/c/realloc() & free():动态分配内存
从系统堆申请分配内存以malloc为例:声明:void * malloc(unsigned int size);size为所需字节数;若分配正常,返回值为指向void的指针,应将其强转为所需类型;若分配不正常,返回值为NULL的指针;至于calloc,大致相同:void * calloc(unsigned int num, unsigned int size);...原创 2019-08-05 23:57:23 · 224 阅读 · 0 评论