重庆分公司,新征程启航

为企业提供网站建设、域名注册、服务器等服务

C/C++笔试题目-创新互联

目录
  • 题目1
    • 题解:
  • 题目2
    • 题解:
  • 题目3
    • 题解:
  • 题目4
    • 题解:
  • 习题5
    • 题解:
  • 问题6
    • 题解:
  • 题目7
    • 题解

创新互联建站主营洪江网站建设的网络公司,主营网站建设方案,app软件开发公司,洪江h5小程序设计搭建,洪江网站营销推广欢迎洪江等地区企业咨询题目1

在这里插入图片描述

题解:
  1. char、short、int、long、bool 基本类型都可以用于switch语句。
  2. float、double都不能用于switch语句。
  3. enum类型,即枚举类型可以用于switch语句。
  4. 所有类型的对象都不能用于switch语句。
  5. 字符串也不能用于switch语句
题目2

在这里插入图片描述

题解:

最后两个语句还原回来就是 int* a,b; int* c; int* d; 因为#define是宏定义,仅仅是直接替换。而typedef是把该类型定义一个别名。故此次b只是int类型。而 a,c,d才是指针类型。

题目3

在这里插入图片描述

题解:

在 C 语言中用一个指针变量指向一个文件,这个指针称为文件指针。通过文件指针就可对它所指的文件进行各种操作。文件指针不是文件位置指针,所以 BC 选项错误, D 选项中不可以写入任意的字符。

题目4

在这里插入图片描述

题解:

在这里插入图片描述

习题5

在这里插入图片描述

题解:

复制构造函数被调用的三种情况
l 定义一个对象时,以本类另一个对象作为初始值,发生复制构造;

l 如果函数的形参是类的对象,调用函数时,将使用实参对象初始化形参对象,发生复制构造;

l 如果函数的返回值是类的对象,函数执行完成返回主调函数时,将使用return语句中的对象初始化一个临时无名对象,传递给主调函数,此时发生复制构造

问题6

在这里插入图片描述

题解:
  1. 方便管理内存缓冲区:如果用指针 char* 代替 char data[0] 来指向新开辟的空间,需要两次malloc也需要两次free。用char data[0],一次malloc即完成,方便管理缓冲区。

  2. 减少内存碎片化:如果在struct尾部用指针*指向新开辟的buffer长度,struct本身相较buffer长度是很小的,即碎片化的内存。而用char data[0]指向新开辟的buffer,只需一次malloc,struct和buffer的空间是连续的。即减少了内存的碎片化。

  3. 节省空间,相较用指针指向新开辟的str,data[0]是不占用内存的,而指针占用4字节。
    一、在struct结构定义的后面使用data[0]的好处:
    1.方便管理内存缓冲区:如果用指针 char* 代替 char data[0] 来指向新开辟的空间,需要两次malloc也需要两次free。用char data[0],一次malloc即完成,方便管理缓冲区。
    2.可以减少内存碎片化:如果在struct尾部用指针*指向新开辟的buffer长度,struct本身相较buffer长度是很小的,即碎片化的内存。而用char data[0]指向新开辟的buffer,只需一次malloc,struct和buffer的空间是连续的。即减少了内存的碎片化。
    3.节省空间(这里就不得不说说指针和data[0]的区别)

二、使用指针和data[0]有一下区别:
1.地址的连续性,data[0]和结构体是一个连续的存储空间,使用指针就不是连续的。连续的存储空间通过不同的强转使用起来比较灵活。
2.data[0]不占用任何内存,*data占用4字节 。
3.建议:C++的类中可以使用 *data但是不要使用data[0],因为这样使用可能会导致类中的一些看不到的东西被覆盖

题目7

在这里插入图片描述

题解

【解释】通过调用getchar函数将输入的第一个字符赋给c1,所以c1的值是字符’1’,接下来调用scanf函数将输入的两位数赋给整型变量a1,但此时输入的两位是2a,a是无效的数字,所以只将2赋给变量a1,字符’a’通过后续的getchar函数将其赋给变量c2,再接下来调用scanf函数将输入的三位数赋给整型变量a2,则a2的值为345。所以正确答案是A。

你是否还在寻找稳定的海外服务器提供商?创新互联www.cdcxhl.cn海外机房具备T级流量清洗系统配攻击溯源,准确流量调度确保服务器高可用性,企业级服务器适合批量采购,新人活动首月15元起,快前往官网查看详情吧


当前文章:C/C++笔试题目-创新互联
转载来源:http://cqcxhl.cn/article/cohiii.html

其他资讯

在线咨询
服务热线
服务热线:028-86922220
TOP