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

news2024/9/28 23:33:29

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.coloradmin.cn/o/1485770.html

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

相关文章

Windows下用crashRpt让C++程序崩溃自动生成dump

背景 我们的Windows c程序如果在客户或者没有代码调试的环境下崩溃了。我们只能从机器异常报错里得知寥寥无几的信息&#xff0c;如果程序崩溃时&#xff0c;能自动触发当前堆栈信息的收集&#xff0c;那么对于开发人员复现BUG就尤为重要 CrashRpt CrashRpt主要功能 1.崩溃报…

【Java基础系列】时间戳

&#x1f49d;&#x1f49d;&#x1f49d;欢迎来到我的博客&#xff0c;很高兴能够在这里和您见面&#xff01;希望您在这里可以感受到一份轻松愉快的氛围&#xff0c;不仅可以获得有趣的内容和知识&#xff0c;也可以畅所欲言、分享您的想法和见解。 推荐:kwan 的首页,持续学…

政安晨【示例演绎虚拟世界开发】(五):从制作一个对战小游戏开始(Cocos Creator 《击败老大》)(第二段)

政安晨的个人主页&#xff1a;政安晨 欢迎 &#x1f44d;点赞✍评论⭐收藏 收录专栏: AI虚拟世界大讲堂 希望政安晨的博客能够对您有所裨益&#xff0c;如有不足之处&#xff0c;欢迎在评论区提出指正&#xff01; 现在我们已经学会了如何向场景中添加图片&#xff0c;接下来继…

Django路由层(反向解析、路由分发、命名空间、路径转换)

Django路由层&#xff08;反向解析、路由分发、命名空间、路径转换&#xff09; 目录 Django路由层&#xff08;反向解析、路由分发、命名空间、路径转换&#xff09;路由配置反向解析前端用法后端用法 反向解析的本质路由分发用法示例 分发时遇到的问题解决方案1解决方案2 命名…

过于老旧的pytorch_ssim包 请从github下载源码

有些冷门算法真的不要随便pip&#xff0c;有可能下载到史前版本…最好还是找源代码 汗 今天要用到SSIM损失函数&#xff0c;从网上简单看了一下原理就想测试一下&#xff0c;偷了一下懒就直接在命令行输入pip install pytorch_ssim了&#xff0c;结果报了一堆错误&#xff08;汗…

vue3编写H5适配横竖屏

具体思路如下&#xff1a; 1、监听浏览器屏幕变化&#xff0c;通过监听屏幕宽高&#xff0c;辨别出是横屏&#xff0c;还是竖屏状态 在项目的起始根页面进行监听&#xff0c;我就是在App.vue文件下进行监听 代码如下&#xff1a; <template><RouterView /> <…

【MySQL】:约束全解析

&#x1f3a5; 屿小夏 &#xff1a; 个人主页 &#x1f525;个人专栏 &#xff1a; MySQL从入门到进阶 &#x1f304; 莫道桑榆晚&#xff0c;为霞尚满天&#xff01; 文章目录 &#x1f4d1;前言一. 约束概述二. 约束演示三. 外键约束3.1 介绍3.2 语法3.3 删除/更新行为 &…

Ribbon负载均衡(黑马学习笔记)

上Eureka一节中&#xff0c;我们添加了LoadBalanced注解&#xff0c;即可实现负载均衡功能&#xff0c;这是什么原理呢&#xff1f; 负载均衡原理 SpringCloud底层其实是利用了一个名为Ribbon的组件&#xff0c;来实现负载均衡功能的。 那么我们发出的请求明明是http://users…

文献阅读:The Unreasonable Effectiveness of Easy Training Data for Hard Tasks

文献阅读&#xff1a;The Unreasonable Effectiveness of Easy Training Data for Hard Tasks 1. 文章简介2. 方法介绍 1. 数据集难易度分析2. 模型训练前后变化 3. 实验考察 & 结论 1. 实验设计 1. 使用数据集2. 使用模型 2. 实验结果 1. 数据集难度分析2. 在Easy数据集下…

迭代器模式:分离遍历逻辑与数据结构,实现统一访问接口与灵活扩展

文章目录 一、引言二、应用场景与技术背景三、模式定义与实现四、优缺点分析总结&#xff1a; 一、引言 ​ 迭代器模式&#xff08;Iterator Pattern&#xff09;是一种行为型设计模式&#xff0c;它提供了一种方法顺序访问聚合对象的元素&#xff0c;而又不暴露其底层表示。迭…

SaaS 电商设计 (九) 动态化且易扩展的实现购物车底部弹层(附:一套普适的线上功能切量的发布方案)

目录 一.背景1.1 业务背景1.2 技术负债 二.技术目标三.方案设计3.1 解决移动端频繁发版3.1.1 场景分析3.1.2 技术方案 3.2 减少后端坏味道代码&无法灵活扩展问题3.2.1 通过抽象接口完成各自单独楼层渲染逻辑3.2.2 通过配置能力做到部分字段可配 四.升级上线(普适于高并发大…

NoSQL--2.MongoDB配置

目录 2.MongdoDB配置 2.1 Windows环境下操作 2.1.1 注册MongDB Atlas&#xff1a; 2.1.2 MongoDB Community Server Download&#xff1a; 2.1.3 启动MondgoDB服务&#xff1a; 2.1.3.1 命令行参数的方式启动MongoDB服务&#xff1a; 2.1.3.2 使用配置文件方式启动Mongo…

Python算法100例-3.4 完数

完整源代码项目地址&#xff0c;关注博主私信源代码后可获取 1.问题描述2.问题分析3.算法设计4.确定程序框架5.完整的程序6.问题拓展 1&#xff0e;问题描述 求某一范围内完数的个数。 如果一个数等于它的因子之和&#xff0c;则称该数为“完数”&#xff08;或“完全数”&…

C#中多语言编程原理及实例解析

文章目录 一、了解C#多语言编程原理1. 通用语言运行库&#xff08;CLR&#xff09;2. 通用类型系统&#xff08;CTS&#xff09;3. 微软中间语言&#xff08;MSIL&#xff09;4. 元数据和反射5. 公共语言规范&#xff08;CLS&#xff09; 二、实例说明 一、了解C#多语言编程原理…

Linux笔记--用户与用户组

Linux系统是一个多用户多任务的操作系统&#xff0c;任何一个要使用系统资源的用户&#xff0c;都必须首先向系统管理员(root)申请一个账号&#xff0c;然后以这个账号的身份进入系统。 用户的账号一方面可以帮助系统管理员对使用系统的用户进行跟踪&#xff0c;并控制他们对系…

MIT-BEVFusion系列九--CUDA-BEVFusion部署6 前向推理的数据加载与图像预处理

目录 加载图像数据加载点云数据模型推理并计时预热操作模型推理检查点云输入数据量打印信息中CopyLidar部分的计算和耗时打印信息中ImageNrom图像预处理部分计算和耗时 该系列文章与qwe、Dorothea一同创作&#xff0c;喜欢的话不妨点个赞。 接上面的文章&#xff0c;目光聚焦回…

为啥要用C艹不用C?

在很多时候&#xff0c;有人会有这样的疑问 ——为什么要用C&#xff1f;C相对于C优势是什么&#xff1f; 最近两年一直在做Linux应用&#xff0c;能明显的感受到C带来到帮助以及快感 之前&#xff0c;我在文章里面提到环形队列 C语言&#xff0c;环形队列 环形队列到底是怎么回…

数据结构——lesson5栈和队列详解

hellohello~这里是土土数据结构学习笔记&#x1f973;&#x1f973; &#x1f4a5;个人主页&#xff1a;大耳朵土土垚的博客 &#x1f4a5; 所属专栏&#xff1a;数据结构学习笔记 &#x1f4a5;对于顺序表链表有疑问的都可以在上面数据结构的专栏进行学习哦~感谢大家的观看与…

ElasticSearch相关知识点

ElasticSearch相关知识点 1.了解ES ES的作用&#xff1a;ES是一款非常强大的开源搜索引擎&#xff0c;具备非常多强大功能&#xff0c;可以帮助我们从海量数据中快速找到需要的内容 ELK技术栈&#xff1a;ES结合kibana、Logstash、Beasts&#xff0c;也就是 elastic stack 。…

NoSQL--1.虚拟机网络配置

目录 1.初识NoSQL 1.1 NoSQL之虚拟机网络配置 1.1.1 首先&#xff0c;导入预先配置好的NoSQL版本到VMware Workstation中 1.1.2 开启虚拟机操作&#xff1a; 1.1.2.1 点击开启虚拟机&#xff1a; 1.1.2.2 默认选择回车CentOS Linux&#xff08;3.10.0-1127.e17.x86_64) 7 …