请选择 进入手机版 | 继续访问电脑版

【C++ 课外题目】 Vol.2 - 字符串/指针/函数重载/静态变量

[复制链接]
丶禁飞 发表于 2021-1-1 10:30:55 | 显示全部楼层 |阅读模式 打印 上一主题 下一主题
如果题目内容能自己脑部的此处就不再描述题目了。
  06 字符串

(阶段检测 单选 1)
D 肯定用的时候“烫烫烫烫”啊,字符串没有\0结尾肯定字符串溢出。(5个位置放了5个字母,没地方放\0了)
B 是char[] 的数组,也就是字符串的数组,就没事了。
详见我的博客 【SEU步伐设计课条记】 15 - 2020/12/03 - Write C++ programs - 字符串
07 指针

(阶段检测 单选 2)
看起来很难,实在纸老虎。
A 实在是一个函数的声明的布局(不信你自己打上去放在p上看是不是就是一个函数)(别的要习惯double*,另有int& 是一种与double,int截然差别的数据范例)
像B这种是直接初始化,雷同于int a(3);。
08 字符串

(阶段检测 单选 3)
先看一下传统的swap函数:关于 C++中 swap函数的三种方法的思考
然后发现很像指针的用法,然而仔细想想,交换的是char而非const char[]。
字符串在调用的时候自己就充当指针的作用了,自己能完成许多指针的作用,因而,char* 就是 char[],直接把它丢进去就行了。
(顺带提一句,千万别认为双引号里这玩意天经地义是string,这是C++ 尺度库里封装的一个类,双引号里的内容本质上就是 const char[])
09 函数重载

(阶段检测 单选 4)
个人认为这道题目是不严谨的。
但是首先,A,C错误毋庸置疑。
A) 函数重载不能仅以返回值区分
C) 你写一个含两参的构造谁知道调这个照旧题干里的谁人。
B) 稳妥的肯定对的
D) 我明白出题老师的顾虑,如果T恰好是 double 咋办,不就有两个可以调吗?大概在最新版的 Visual Studio 2019 之中优先级是有区分的,因而不会有调用歧义的存在。(不外 Qt 确实就报错了,纵然用了 MSVC 的 kit,而且 dubug 这个问题花了我好长时间)
  



但是作为考试肯定选 B。
10 静态变量

(阶段检测 单选 5)
静态变量 (static)
A) 生命周期函数竣事了还存在,直到步伐竣事(这就是叫静态变量的原因)
B) 和 A 一样的错,也不是全局作用域
C) 不是全局作用域(那叫全局变量)
D) 这和全局变量一样未初始就默认初始为 0(局部变量未初始化那么这块内存原来是啥这个就是啥)
  ALL RIGHTS RESERVED © 2020 Teddy van Jerry
欢迎转载,转载请注明出处。
  See also

Teddy van Jerry 的导航页

来源:https://blog.csdn.net/weixin_50012998/article/details/111935491
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则


专注素材教程免费分享
全国免费热线电话

18768367769

周一至周日9:00-23:00

反馈建议

27428564@qq.com 在线QQ咨询

扫描二维码关注我们

Powered by Discuz! X3.4© 2001-2013 Comsenz Inc.( 蜀ICP备2021001884号-1 )