CC++实习生笔试经验与代码分析
需积分: 9 30 浏览量
更新于2024-09-13
收藏 31KB DOC 举报
本次分享的是关于CC++实习生笔试卷的一些核心知识点,主要涵盖以下几个方面:
1. 基础知识:
- 缩写词汇:题目要求考生熟悉编程领域的常用缩写及其含义。例如:
- OS (Operating System): 操作系统。
- VS (Visual Studio): 一个集成开发环境,常用于Windows平台的C++开发。
- MS (Microsoft): 微软公司,与VS密切相关。
- CS (Computer Science): 计算机科学。
- RTOS (Real-Time Operating System): 实时操作系统,专为实时任务设计。
- SDK (Software Development Kit): 开发工具包,包含一组工具和库支持开发。
- IDE (Integrated Development Environment): 集成开发环境,如VS、Eclipse等。
- C语言表达式:考生需判断并解释表达式的含义:
- a&b: 按位与运算,取a和b每一位的最低有效位,结果为0或1。
- a&(&b): 先对b求解,再与a进行按位与,因为括号改变了运算顺序。
- a&&b: 逻辑与运算,当a和b都为真时结果为真,否则为假。
- a**b: 这个在C/C++中是不合法的,可能需要检查是否漏了类型转换。
- 匈牙利命名法:一种变量命名规则,通过前缀表示变量类型。例子包括:
- g_通常表示全局变量(Global)。
- m_可能表示成员变量(Member)。
- p表示指针(Pointer)。
- h可能表示结构体或类的头部(Header)。
- sz通常用于字符串(String)。
- dw可能表示无符号双字(Unsigned Double Word)。
2. 编程概念:
- ifndef/define/endif:预处理器指令,ifndef检查宏是否定义,若未定义则包含内容,define定义宏,endif关闭预处理区域。
- extern "C": 引入C语言的链接模型,防止名称冲突,特别是在C++中调用C API。
3. 版本控制和构建流程:
- checkout: 检出版本控制系统中的代码到本地工作目录,准备进行修改。
- checkin: 将本地修改提交回版本控制系统,保存代码更新。
- Windows开发:
- .c/.cpp: 源代码文件。
- .rc: 资源文件,用于Windows应用程序的界面和图标等资源。
- .obj: 对源代码的编译中间文件,编译后连接成.exe。
- .res: 扩展资源文件,包含非文本资源。
- .lib: 库文件,链接器用来链接的对象集合。
- .dll: 动态链接库,可重用的代码模块。
- .exe: 可执行文件,程序的最终产物。
- Linux开发(GCC编译):
- 编译步骤:gcc source.c -o output可执行文件,生成.o文件(编译),ld object_files -o executable(链接)。
- 中间文件:.o(对象文件),包含编译后的代码和符号信息。
4. 简单代码分析:
- 第一个代码段:GetMemory函数返回指向字符串常量的指针,main中将返回值赋值给str并打印,但str为NULL,会导致未初始化的内存读取错误。
- 第二个代码段:GetMemory动态分配内存给指针p,然后使用strcpy复制字符串,main中正常运行,但未释放内存可能导致内存泄漏。
5. 程序员习惯:
- 个人偏好:这部分可能涉及个人喜好,如常用的代码编辑器(如VS Code, Sublime Text等)和版本控制工具(如Git)。
- 等宽字体:有助于代码的可读性,使不同长度的标识符保持一致宽度,利于快速扫描代码。
通过这份笔试卷,实习生考察点包括基础概念、语法理解、代码实践、命名规范和开发环境的理解等。解答这些问题不仅要求扎实的编程基础,还需具备良好的编码习惯和问题排查能力。
ty564778188
- 粉丝: 1
- 资源: 10
最新资源
- SwiLex是Swift中的通用词法分析器库。-Swift开发
- laravel-46883:库索·德·拉拉维尔(Curso de Laravel)código46883
- 不明飞行物
- Honey Muffin-crx插件
- remi:Python REMote接口库。 平台无关。 大约100 KB,非常适合您的饮食
- dot-http:dot-http是基于文本的可编写脚本的HTTP客户端
- diaosi.rar_人工智能/神经网络/深度学习_Visual_C++_
- 数据科学课程
- App Android Faculdade-开源
- ML100Days
- Umbraco Helper Extension-crx插件
- Prac5.zip_Linux/Unix编程_C/C++_
- 连接:Flask之上的SwaggerOpenAPI First Python框架,具有自动端点验证和OAuth2支持
- VB做的IP地址输入框
- minsk-shop
- UIViews和CALayer类的有用扩展,以添加漂亮的颜色渐变。-Swift开发