牛客网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.rhkb.cn/news/269511.html

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

相关文章

【C++庖丁解牛】初始化列表 | Static对象 | 友元函数

&#x1f4d9; 作者简介 &#xff1a;RO-BERRY &#x1f4d7; 学习方向&#xff1a;致力于C、C、数据结构、TCP/IP、数据库等等一系列知识 &#x1f4d2; 日后方向 : 偏向于CPP开发以及大数据方向&#xff0c;欢迎各位关注&#xff0c;谢谢各位的支持 目录 1. 再谈构造函数1.1 …

小程序常用样式和组件

常用样式和组件 1. 组件和样式介绍 在开 Web 网站的时候&#xff1a; 页面的结构由 HTML 进行编写&#xff0c;例如&#xff1a;经常会用到 div、p、 span、img、a 等标签 页面的样式由 CSS 进行编写&#xff0c;例如&#xff1a;经常会采用 .class 、#id 、element 等选择器…

【计算机网络】TCP 如何实现可靠传输

TCP通过三次握手建立连接&#xff0c;四次挥手释放连接&#xff0c;确保连接建立和连接释放的可靠。 序列号、检验和、确认应答信号、重发机制、连接管理、窗口控制、流量控制、拥塞控制 标准回答 可靠传输就是通过TCP连接传送的数据是没有差错、不会丢失、不重复并且按序到达的…

React之数据绑定以及表单处理

一、表单元素 像<input>、<textarea>、<option>这样的表单元素不同于其他元素&#xff0c;因为他们可以通过用户交互发生变化。这些元素提供的界面使响应用户交互的表单数据处理更加容易 交互属性&#xff0c;用户对一下元素交互时通过onChange回调函数来监听…

【李沐论文精读】GAN精读

论文&#xff1a;Generative adversarial nets 参考&#xff1a;GAN论文逐段精读、生成对抗网络、李沐视频精读系列 一、介绍 什么是GAN? GAN(Generative adversarial network&#xff0c;生成对抗网络&#xff09;&#xff0c;它由生成器G&#xff08;Generator Neural Netwo…

持安科技孙维伯:零信任在攻防演练下的最佳实践|DISCConf 2023

近日&#xff0c;在2023数字身份安全技术大会上&#xff0c;持安科技联合创始人孙维伯应主办方的特别邀请&#xff0c;发表了主题为“零信任在攻防演练下的最佳实践”的演讲。 孙维伯在2023数字身份安全技术大会上发表演讲 以下为本次演讲实录&#xff1a; 我是持安科技的联合…

二百二十六、Linux——shell脚本查看今天日期、昨天日期、30天前日期、1月前日期

一、目的 由于磁盘资源有限&#xff0c;因为对原始数据的保存有事件限制&#xff0c;因为对于超过一定期限的数据文件则需要删除&#xff0c;要实现定期删除则第一步就是查看日期时间 二、在Linux中创建shell脚本 #! /bin/bash source /etc/profile nowdatedate --date0 da…

计算机系统缺少cv100.dll文件解决方法(最新)

cv100.dll 是一个Windows操作系统中的动态链接库&#xff08;DLL&#xff09;文件。DLL文件是包含可由多个程序共享的代码和数据的模块&#xff0c;以减少磁盘空间占用并提高系统性能。根据收集到的信息&#xff0c;cv100.dll 文件可能与图像处理、计算机视觉相关的功能有关。 …

iOS中卡顿产生的主要原因及优化思路

卡顿本质上是一个UI体验上的问题&#xff0c;而UI的渲染及显示&#xff0c;主要涉及CPU和GPU两个层面。若 CPUGPU渲染耗时超过16.7ms&#xff0c;就会在屏幕vsync信号到来时无法更新屏幕内容&#xff0c;进而导致卡顿。 iOS中UI渲染主要包含Layout->Display->Prepare->…

Sora到底有多强?

北京时间2月16日凌晨&#xff0c;OpenAI发布文本生成视频的AI模型Sora&#xff0c;瞬时刷屏科技圈&#xff0c;成为2024年开年“顶流”。 官方称&#xff0c;Sora只需文本就能自动生成高度逼真和高质量的视频&#xff0c;且时长突破1分钟。这是继文本模型ChatGPT和图片模型Dal…

C 数据类型

在 C 语言中&#xff0c;数据类型指的是用于声明不同类型的变量或函数的一个广泛的系统。变量的类型决定了变量存储占用的空间&#xff0c;以及如何解释存储的位模式。 C 中的类型可分为以下几种&#xff1a; 序号类型与描述1基本数据类型 它们是算术类型&#xff0c;包括整型…

Gitlab 安装部署

目录 1、Jenkins 结合 Gitlab 构建 CI/CD 环境 CI/CD 介绍 CI/CD 流程 Jenkins 简介 GitLab 简介 项目部署方式 CI系统的工作流程 2、搭建 GitLab 安装 GitLab 配置 GitLab 修改root密码 访问 GitLab 开机自启 3、使用 GitLab 管理 GitLab 关闭 GitLab 注册功能…

我的NPI项目之Android 安全系列 -- Keymaster到底是个什么

最近因为一直在调研独立secure element集成的工作&#xff0c;不巧的是目前使用的高通平台只有NFC-eSE的方案。高通目前也并不支持独立的eSE集成&#xff0c;codebase中并无相对应的代码。举个例子&#xff0c;目前使用的STM的一款eSE&#xff0c;但是这款eSE的开发STM还没有完…

【MySQL】数据库中常用的函数

目录 聚合函数COUNT()函数的多种用法COUNT(*)COUNT(主键)COUNT(1)COUNT(常量)COUNT(非主键)COUNT(distinct(字段)) COUNT()函数小结 字符函数length(str)函数&#xff1a;获取参数值的字节个数concat(str1,str2,...)函数&#xff1a;字符串拼接upper(str)、lower(str)函数:大小…

java 商机管理系统Myeclipse开发mysql数据库web结构jsp编程计算机网页项目

一、源码特点 java 商机管理系统是一套完善的java web信息管理系统&#xff0c;对理解JSP java编程开发语言有帮助&#xff0c;系统具有完整的源代码和数据库&#xff0c;系统主要采用B/S模式开发。开发环境为 TOMCAT7.0,Myeclipse8.5开发&#xff0c;数据库为Mysql5.0&…

【数据结构】用队列实现栈

下面是一些思路分析和代码分享&#xff0c;有需要借鉴即可。 1.问题描述 我想用队列来实现栈的功能&#xff0c;具体而言是用两个队列做底层做出栈的功能来。 有人可能会疑问会不会多次一举&#xff0c;这里仅作练习&#xff0c;为了更加进一步了解栈/队列的性质 2.思路分析 …

Android logcat系统

一 .logcat命令介绍 android log系统: logcat介绍 : logcat是android中的一个命令行工具&#xff0c;可以用于得到程序的log信息. 二.C/Clogcat访问接口 Android系统中的C/C日志接口是通过宏来使用的。在system/core/include/android/log.h定义了日志的级别&#xff1a; /…

递归学习资料

思路 例题 package 递归;public class 反向打印字符串 {public static void main(String[] args) {f("ABC",0);}static void f(String str,int n){if (nstr.length()){return;}f(str,n1);System.out.println(str.charAt(n)"");} }多路递归 递归优化 -剪枝…

数据库系统概论(超详解!!!) 第二节 数据模型

1.数据模型分为两类&#xff08;两个不同的层次&#xff09; &#xff08;1&#xff09; 概念模型 &#xff0c;也称信息模型&#xff0c;它是按用户的观点来对数据和信息建模&#xff0c;用于数据库设计。 &#xff08;2&#xff09; 逻辑模型 &#xff0c;逻辑模型主要包括…

异地组网搭建方案

在这个信息爆炸的时代&#xff0c;人与人之间的联系变得越来越密切&#xff0c;而异地组网搭建方案也因此变得越 来越重要。无论是跨国企业、远程学习还是国际合作&#xff0c;构建一个快捷稳定的异地组网系统&#xff0c;已经 成为许多组织和个人不可或缺的需求。接下来&#…