腾讯2021实习生校园招聘后台笔试题参考.pdf
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
【腾讯2021实习生校园招聘后台笔试题解析】 1. 表达式判断与赋值操作: 在C++中,表达式(A)、(B)、(C)和(D)涉及到了自增运算符++的使用。自增运算符有两个版本:前缀++(a++)和后缀++(++a)。自增运算符会改变变量的值并返回新值或旧值。题目中,正确的表达式和a的值如下: - (A) a += (a++):a的初始值为4,表达式先自增a,变为5,然后加上a原来的值4,a最终值为9。 - (B) a += (++a):首先自增a,变为5,然后加上5,a的值为10。 - (C) (a++) += a:错误,因为左侧(a++)不是一个有效的左值,不能进行赋值操作。 - (D) (++a) += (a++):同样错误,但修改后变为(++a) += a,a先自增为5,然后加上5,a的值为10。 2. sizeof运算符: sizeof运算符用于计算类型或变量所占用的内存大小。在32位系统下: - sizeof(str):str是一个字符串常量数组,包括字符串结束符'\0',所以它的大小为17个字符。 - sizeof(p):p是一个指向字符的指针,无论它指向哪里,其大小始终为4字节。 - sizeof(n):n是一个int类型的变量,占用4字节。 - sizeof(在函数内部的str):函数内部的str是一个局部变量,它的大小仍然是4字节,尽管它实际表示的是一个字符串数组,但这里表示的是指针的大小。 - sizeof(p):动态分配的指针p的大小始终为4字节。 3. 预处理指令和类型相关问题: - ifndef/define/endif:这些是预处理器指令,用于防止头文件被多次包含,避免重复定义问题。 - #include <filename.h> 和 #include "filename.h":前者用于包含标准库头文件,后者用于包含用户自定义的头文件。 - extern "C":在C++中,extern "C"用于告诉编译器以C的方式链接函数,使得C++代码可以调用C编译的函数。 - switch()中不允许的数据类型:switch语句不接受浮点型(实型)数据。 4. 动态内存分配和指针操作: - Test函数1:分配了100个字节的内存给str,并复制了"hello",所以输出"hello"。 - Test函数2:free(str)后,str变为未定义的指针,但if(str != NULL)检查失败,因此仍然执行了复制和打印操作,输出"world"。 - Test函数3:返回的是数组的地址,但该数组在函数结束后不再有效,因此打印结果是不确定的。 5. 自定义strcat函数: - 不调用标准库的strcat,可以通过遍历字符串直到遇到'\0'来找到目标字符串的末尾,然后逐个复制源字符串的字符,直到源字符串结束。 - 返回值类型为char*的原因是,按照strcat的约定,函数应返回目的字符串的首地址,方便链式调用和赋值。 6. MFC中的CString类: MFC的CString类是一种封装了字符串操作的类,但它并非类型安全。类型安全通常指的是在编译时就能检查类型匹配,而CString可以接受各种类型的转换,可能导致潜在的运行时错误,如隐式转换和空指针异常。因此,使用时需要注意类型匹配和异常处理。























剩余12页未读,继续阅读


- 粉丝: 8
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助


最新资源
- 医学院校计算机专业课程体系构建的探索与实践.docx
- 开题报告项目管理系统设计.pdf
- 最新最专业的企业网站推广方案.doc
- 计算机网络课程设计说明书兰州市第九中学校园网组建方案.doc
- 网络销售实习报告1000字.docx
- 国际项目管理专业资质认证IPMP试题概论.doc
- 工业互联网体系架构.doc
- 海赋国际网络营销方案.pptx
- 组合投资风险与收益与其MATLAB实现.doc
- GOSP-硬件开发资源
- 嵌入式系统期末考试试卷.doc
- 软件学院软件工程领域代码.doc
- 基于Android手机蓝牙控制的智能小车设计.doc
- 电子商务公司的口号.doc
- 网络营销战略计划.pptx
- 三菱FX2N系列PLC.ppt


