牛客网C++专项题目整理(1)

1. 若有定义语句:char s[3][10],(*k)[3],*p;则以下赋值语句错误的是

1.p = s;

2.p = k;

3.p = s[0]; 

4.k = s;

答案:124

char s[3][10]    s 是数组指针,类型为char (*)[3],所指向的每个数组长度为10;

char (*k)[3]    k是一个数组指针,类型也为 char (*)[3],但是所指向的每个数组的长度未知;

char *p    p是一个char*类型的指针

在没有强制类型转换的情况下,只有类型完全相同的指针才能相互复制。所以124是无法赋值的

s[0]是第一行数组的首元素地址,s[0]与s[0][0]相等,可以给char*类型的指针赋值。

2.函数即可以嵌套定义,又可以嵌套调用。请问这句话的说法是正确的吗?

错误,函数不可以嵌套定义,但可以嵌套调用

不过lambda表达式可以嵌套定义

3. 什么函数不能声明为虚函数?

A静态成员函数

B内联函数

C构造函数

D析构函数

答案:ABC

B 内联函数目的是在代码中直接展开(编译期),而虚函数是为了继承后能动态绑定执行自己的动作(动态绑定),因此本质是矛盾的,因此即使内联函数声明为虚函数,编译器遇到这种情况是不会进行inline展开的,而是当作普通函数来处理。因此声明了虚函数不能实现内敛的,即内敛函数可以声明为虚函数,但是毫无了内联的意义
作者:乖,让我摸摸头
链接:牛客网公司真题_免费模拟题库_企业面试|笔试真题
来源:牛客网

C 虚函数对应一个vtable,这大家都知道,可是这个vtable其实是存储在对象的内存空间的。问题出来了,如果构造函数是虚的,就需要通过 vtable来调用,可是对象还没有实例化,也就是内存空间还没有,无法找到vtable,所以构造函数不能是虚函数
作者:v_xchen_v
链接:牛客网公司真题_免费模拟题库_企业面试|笔试真题
来源:牛客网

4. 

void Func(char str_arg[100]){

    printf("%d\n", sizeof(str_arg));

}

int main(void){

    char str[] = "Hello";

    printf("%d\n", sizeof(str));

    printf("%d\n", strlen(str));

    char*p = str;

    printf("%d\n", sizeof(p));

    Func(str);

}

32位系统下下面程序的输出结果为多少?

答案: 6544

数组在函数的参数中会退化成指针,再求长度就是4字节

5. 若变量已正确定义,要求程序段完成求5!的计算,不能完成此操作的程序段是()

Afor(i=1,p=1;i<=5;i++) p*=i;

Bfor(i=1;i<=5;i++){ p=1; p*=i;}

Ci=1;p=1;while(i<=5){p*=i; i++;}

Di=1;p=1;do{p*=i; i++; }while(i<=5);

答案:B

在循环中每次p都被设置成1,最后得到的是5

6 类B是类A的公有派生类,类A和类B中都定义了虚函数func(),p是一个指向类A对象的指针,则p->A::func()将()?

A调用类B中函数func()

B即调用类A中函数,也调用类B中的函数

C调用类A中函数func()

D根据p所指的对象类型而确定调用类A中或类B中的函数func()

答案:C 加了作用域就是A中的函数

父类指针如果指向的是子类对象,那么调用虚函数就是子类的虚函数,因为虚函数表上父类的虚函数被覆盖了。如果指向父类对象,调用虚函数将会调用父类的虚函数。

7 并发编程中通常会遇到三个问题:原子性问题,可见性问题,有序性问题, java/C/C++中volatile关键字可以保证并发编程中的()

A原子性, 可见性

B可见性,有序性

C原子性,有序性

D原子性, 可见性,有序性

答案:B

  • 保证了不同线程对这个变量进行操作时的可见性,即一个线程修改了某个变量的值,这新值对其他线程来说是立即可见的。(实现可见性)
  • 禁止进行指令重排序。(实现有序性)
  • volatile 只能保证对单次读/写的原子性。i++ 这种操作不能保证原子性。

作者:羽杰
链接:https://www.jianshu.com/p/ccfe24b63d87
来源:简书

8 对于代码段

1

2

t=0;

while (printf("*")) {t++; if (t<3) break;}

下面描述正确的是()

A其中循环控制表达式与0等价

B其中循环控制表达式与’0’等价

C其中循环控制表达式是不合法的

D以上说法都不对

答案B printf(“*”)返回的是字符的个数,为1(真)

scanf和printf都是有返回值的

scanf:返回值为参数的个数,输入不规范返回的是0,ctrl+z返回EOF

printf:返回输出的字符的个数

9 下列程序执行后的输出结果是 __________

1

2

3

4

5

6

7

8

9

10

11

12

#include <stdio.h>

void func(int *a, int b[]) { b[0] = *a + 6; }

main() {

    int a, b[5];

    a = 0;

    b[0] = 3;

    func(&a, b);

    printf("%d\n", b[0]);

}

A6

B7

C8

D9

答案 A  0+6,与b[0]原本的值无关

10 

设有如下定义:

1

2

3

4

5

6

struct ss

{

    char name[10];

    int age;

    char sex;

} std[3], *p = std;

下面各输入语句中错误的是____________

Ascanf("%d", &(*p).age);

Bscanf("%s", &std.name);

Cscanf("%c", &std[0].sex);

Dscanf("%c", &(p->sex));

答案 B 因为std.name是一个数组,而%s应该直接用于数组名,不需要再取地址。正确的写法应该是scanf("%s", &std[0].name);

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/716872.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

国内哪个工具可以平替chatgpt?国内有哪些比较好用的大模型gpt?

我自己试用了很多的平台&#xff0c;发现三个比较好的大模型平台&#xff0c;对普通用户也比较的友好的&#xff0c;而且返回内容相对来说&#xff0c;正确率更高的&#xff0c;并且相关场景插件比较丰富的国内厂商。 本文说的&#xff0c;是我自己觉得的&#xff0c;比较有主观…

拆帧神器:深度解读Netty中的DelimiterBasedFrameDecoder()

欢迎来到我的博客&#xff0c;代码的世界里&#xff0c;每一行都是一个故事 拆帧神器&#xff1a;深度解读Netty中的DelimiterBasedFrameDecoder 前言基础概念分隔符的配置与选择帧的拆分与重组帧的拆分过程&#xff1a;处理分隔符位于帧中间的情况&#xff1a; 处理半包与粘包…

AI时代,我们需要什么能力?

AI 时代&#xff0c;一定会重构很多行业&#xff0c;也会重构人民的生活工作方式&#xff0c;那么 AI 时代&#xff0c;我们需要培养什么能力呢&#xff1f; 我们应该去做那些 AI 做不了的事情&#xff01;让 AI 成为我们的工具&#xff0c;助力我们更高效的解决问题&#xff…

【IO流系列】字符流练习(拷贝、文件加密、修改文件数据)

字符流练习 练习1&#xff1a;文件夹拷贝1.1 需求1.2 代码实现1.3 输出结果 练习2&#xff1a;文件加密与解密2.1 需求2.2 代码实现2.3 输出结果 练习3&#xff1a;修改文件数据&#xff08;常规方法&#xff09;3.1 需求3.2 代码实现3.3 输出结果 练习4&#xff1a;修改文件数…

【MySQL】查询语句:条件、排序和分页

基本查询 MySQL 数据库使用SELECT语句来查询数据。 查询字段 以下为在MySQL数据库中查询数据通用的 SELECT 语法&#xff1a; SELECT 字段名,字段名... FROM 表名;选择全部列 SELECT * FROM emp; -- 查询所有字段一般情况下&#xff0c;除非需要使用表中所有的字段数据&…

消防主机报故障时发出故障及原因及解决办法!

本文以青鸟消防JBF-11SF为例。 其他型号或品牌的消防主机也可参考。 开机前&#xff0c;必须先测量系统接线的绝缘电阻&#xff0c;确保各绝缘电阻满足以下要求&#xff1a; 1&#xff09;空载时各电路信号线之间的绝缘值应大于5K欧姆。 2&#xff09;正常天气条件下&#x…

Java SE:反射

反射作用 获取字节码文件里面的所有信息&#xff0c;包括构造方法、成员、成员方法&#xff0c;以及修饰他们的修饰符、类型和方法的返回值等等&#xff0c;只要是类里面的内容都能获取&#xff0c;获取之后可以动态的调用方法&#xff0c;动态的创建对象 获取类字节码文件对象…

2024全国水科技大会暨新材料在水污染防治中的应用论坛(十)

召集人&#xff1a;唐 量 上海大学环境与化学工程学院教授 庄赞勇 福州大学材料科学与工程学院教授 一、会议背景 为积极应对“十四五”期间我国生态环境治理面临的挑战&#xff0c;加快生态环境科技创新&#xff0c;构建绿色技术创新体系&#xff0c;全面落实科学技术部、生…

点云数据结构化与体素化理论学习

一、PCD点云数据存储格式的进一步认识 &#xff08;一&#xff09;PCD点云存储格式相较于其它存储格式&#xff08;如PLY、STL、OBJ、X3D等&#xff09;的优势[1] &#xff08;1&#xff09;具有存储和处理有组织的点云数据集的能力&#xff0c;这对于实时应用和增强现实及机器…

20240302-1-ZooKeeper面试题(三)

21. 集群最少要几台机器&#xff0c;集群规则是怎样的? 集群规则为 2N1 台&#xff0c;N>0&#xff0c;即 3 台。 22. 集群支持动态添加机器吗&#xff1f; 其实就是水平扩容了&#xff0c;Zookeeper 在这方面不太好。两种方式&#xff1a;第 62 页 共 485 页全部重启&a…

苍穹外卖学习 Day10 Day11 Day12

前言 用于记录苍穹外卖Day10、Day11、Day12的学习 Day10 订单状态定时处理 来电提醒 客户催单 订单状态定时处理 Spring Task Spring Task是一个任务调度工具&#xff0c;可以按照约定的时间自动执行某个代码逻辑&#xff08;定时自动执行某段Java代码&#xff09; cron表…

代码随想录算法训练营第三十天| 回溯篇总结

文章目录 前言一、组合问题二、切割问题三、子集问题四、排列问题五、性能分析总结 前言 回溯法就是暴力搜索&#xff0c;并不是什么高效的算法&#xff0c;最多再剪枝一下。 组合问题&#xff1a;N个数里面按一定规则找出k个数的集合 排列问题&#xff1a;N个数按一定规则全…

【黑马程序员】STL之set和map容器

文章目录 set/multiset容器set基本概念简介区别 set的构造和赋值功能描述函数原型代码示例运行结果 set的大小和交换功能描述函数原型代码示例运行结果 set的插入和删除功能描述函数原型代码示例运行结果 set查找和统计函数原型代码示例运行结果 set和multiset区别区别代码示例…

JVM(6)

JMM JVM定义了一种Java内存模型来屏蔽掉各种硬件和操作系统的内存访问差异,以实现让Java程序在各种平台下都能达到一致的内存访问效果.在此之前,C/C直接使用物理硬件和操作系统的内存模型,因此,会由于不同平台下的内存模型差异,有可能导致程序在一套平台上并发完全正常,而在另…

深入解剖指针(4)

个人主页&#xff08;找往期文章包括但不限于本期文章中不懂的知识点&#xff09;&#xff1a; 我要学编程(ಥ_ಥ)-CSDN博客 目录 回调函数 qsort使用举例 使用qsort函数排序整型数据 使用qsort排序结构数据 qsort函数的模拟实现 回调函数 回调函数就是一个通过函数指…

《Spring Security 简易速速上手小册》第10章 未来趋势与高级话题(2024 最新版)

文章目录 10.1 云原生安全性趋势10.1.1 基础知识10.1.2 重点案例&#xff1a;保护微服务通信10.1.3 拓展案例 1&#xff1a;容器安全最佳实践10.1.4 拓展案例 2&#xff1a;自动化安全审计和合规性检查 10.2 反应式编程与 Spring Security10.2.1 基础知识10.2.2 重点案例&#…

nginx-图片模块

./configure --with-http_image_filter_module location / {root html;index index.html index.htm;if ($arg_w "") {set $arg_w -;}if ($arg_h "") {set $arg_h -;}image_filter resize $arg_w $arg_h;image_filter_jpeg_quality 95; } 访问: 1234…

CSS锥形渐变:conic-gradient()

画一个扇形图&#xff0c;使用常规方法可能很难画&#xff0c;但是用锥形渐变的话非常好画 <style>.pattern{width: 100px; height: 100px;border-radius: 50%;background: conic-gradient(yellow 30deg , black 30deg , black 90deg , yellow 90deg ,yellow 150d…

Git分布式版本控制系统——git学习准备工作

一、Git仓库介绍 开发者可以通过Git仓库来存储和管理文件代码&#xff0c;Git仓库分为两种&#xff1a; 本地仓库&#xff1a;开发人员自己电脑上的Git仓库 远程仓库&#xff1a;远程服务器上的Git仓库 仓库之间的运转如下图&#xff1a; commit&#xff1a;提交&#xff…

Decoupled Knowledge Distillation解耦知识蒸馏

Decoupled Knowledge Distillation解耦知识蒸馏 现有的蒸馏方法主要是基于从中间层提取深层特征&#xff0c;而忽略了Logit蒸馏的重要性。为了给logit蒸馏研究提供一个新的视角&#xff0c;我们将经典的KD损失重新表述为两部分&#xff0c;即目标类知识蒸馏&#xff08;TCKD&a…