C/C++/C#基础
C/C++/C#基础内容
BU冰糖雪梨里的梨PT
内容如有误恳请指正
展开
-
NULL与nullptr的区别
如果用NULL,在函数重载时,NULL的类型被推断为int。这是不好的,所以引入nullptr。nullptr是c++11引入的关键字,它就代表空指针。原创 2024-04-02 21:57:47 · 235 阅读 · 0 评论 -
C++中const关键字的常见用法【常成员变量/常成员函数/常引用/常量指针/指针常量/常量参数】
【4】是代表“常成员函数”,是一个保证,保证不改变成员变量。【5】是代表对象c是一个常对象,常对象就像常变量一样,必须被初始化且只能在初始化时赋值,之后再也不允许修改其值。【7】是指针常量,顾名思义是一种常量,其值存的是一个地址,其值不可被更改。【8】和【9】是等价的,就是一个常量,代表a和b的值永远是这个,之后不能对a和b进行赋值操作。【1】是常量成员变量,跟【8】【9】性质类似,必须被初始化,初始化后,不能够被修改。【3】在函数调用中是最常见的,连同&一起用,提高效率的同时保证了原本的实参不会被修改。原创 2024-02-16 23:25:07 · 302 阅读 · 0 评论 -
C++11:智能指针
诸如 auto_ptr 以及 C++11 新增的 shared_ptr 和 unique_ptr 等智能指针模板使得管理由 new 分配的内存更容易。智能指针对象过期时(即超出了类的作用域时),其析构函数将自动调用 delete 运算符,无需手动释放new出来的内存。如果不对赋值运算符进行重载,那么在程序结束时释放p1p2一定会异常,因为默认浅拷贝。策略:创建智能更高的指针,跟踪引用特定对象的智能指针数。例如,赋值时,让数将加1,而指针过期时,计数将减1.仅当最后一个指针过期时,才调用delete。原创 2024-02-12 15:29:55 · 756 阅读 · 0 评论 -
C++11:移动构造函数【写法+调用时机】【C++返回vector为什么不报错】
研究这个问题的起因是,不理解为什么在一个函数内部声明的vector容器可作为返回值而不出错?潜意识里,vector作为局部变量,被调函数返回后vector会被析构的,那再在主调函数中访问vector中的元素,怎么就能访问呢?原创 2024-02-10 18:52:07 · 862 阅读 · 0 评论 -
(C语言)精确计算程序运行时间的方法
这段代码定义了一个函数get_tps,该函数用于测量处理器的时间戳计数器(RDTSC)每秒的计数率。rdtsc()get_tpst0所以,这个函数返回的是处理器在100毫秒内的时钟周期数。这可以用来大致估计处理器的速度。例如,如果这个函数返回100000000,那么这意味着处理器在100毫秒内运行了大约10亿个时钟周期,或者说它每秒运行了大约10亿个时钟周期。原创 2023-12-15 14:05:02 · 349 阅读 · 0 评论 -
C语言宏定义中#的用处(字符串化)
在宏定义中,#的功能是将其后面的宏参数进行字符串化操作(Stringfication),即无论后面的宏变量是字符串还是常量,都当成字符来处理。在C语言的宏定义中,一个#表示字符串化。原创 2023-12-15 13:57:33 · 71 阅读 · 0 评论 -
C# 2048小游戏核心算法
原创 2023-08-09 17:44:46 · 502 阅读 · 0 评论 -
C语言赋值号的运算顺序
原创 2023-08-06 14:22:41 · 442 阅读 · 0 评论 -
C#打印月历(日期的计算与程序结构规划)
原创 2023-07-12 17:06:32 · 200 阅读 · 0 评论 -
有关【指针】用法的纠错题
总结改错题常见问题原创 2022-12-27 12:01:00 · 134 阅读 · 0 评论 -
约瑟夫问题(猴子选大王)(n个人围成一个圈报数,报到m的人就出局,问谁能留到最后)
原创 2022-12-27 11:37:49 · 1346 阅读 · 0 评论 -
计导简答题
体现了模块间低耦合的思想,使得变量只能被本文件中的函数访问,其他文件不能访问。静态全局变量/非静态全局变量因为在调用之前,编译系统已经知道了被调用函数的函数类型、参数个数、类型和顺序。在文件stdio.h中已经给出了函数原型。原创 2022-12-26 22:49:57 · 119 阅读 · 0 评论 -
函数的调用过程
给被调用函数分配存储空间;计算实际参数表达式的值;原创 2022-12-26 22:42:20 · 48 阅读 · 0 评论 -
7-60 实验11_3_结构排序(C语言)
有n名学生,每个学生的属性包括姓名与总成绩。已知学生的姓名与总成绩,你的任务是将学生的信息按照以下方式排序:首先比较总成绩,总成绩高的在前面,总成绩低的在后面,当总成绩相同时,你要比较学生的姓名,姓名字典序小的同学在前面,姓名字典序大的同学在后面(ASCII码顺序)。n的范围是1—100;学生的姓名中只能包含大小写字母,不会超过20个字符;总成绩为整数。要求:在本题中,你要设计一个结构来存储学生的信息。在此结构中,需要有一个字符数组来存储姓名,一个整型变量存储总成绩。原创 2022-12-13 18:24:19 · 95 阅读 · 0 评论 -
7-61 实验11_7_学生信息管理系统(C语言)
创建学生信息管理系统,具体要求如下:学生信息包括:学号 姓名 数学成绩 英语成绩 计算机成绩功能1:添加学生信息执行1时,输入学号,姓名,三门科目成绩;如果添加学生成功则输出“Add success”,如果学生已存在则输出“Students already exist”功能2:删除学生信息执行2时,输入学号信息;如果学生不存在,输出“Students do not exist”,如果存在,则输出“Delete success”功能3:更改学生成绩信息执行3时,输入学号信息;原创 2022-12-13 18:11:52 · 317 阅读 · 0 评论 -
NS图画法(四种结构)
一张图看清楚原创 2022-11-02 21:43:18 · 3757 阅读 · 0 评论 -
c语言:统计十字路口车辆信息(计数)
000110111100000110111100000001110# 这是一个十字路口检测车辆经过的一行数据,0代表未检测到,1代表一辆车,#代表结束,现在需要知道:总车辆数,最长间隔(不算头尾),总间隔数,总观测时间(以秒为单位,一个数字代表1秒),输入只有一行。原创 2022-11-02 19:56:57 · 576 阅读 · 0 评论 -
C语言:打印月历(日期的计算)
每行按照YYYY-MM格式输入年月,需要你按下图格式打印该月月历。原创 2022-11-02 17:48:13 · 3500 阅读 · 6 评论