12道C++经典笔试题及答案(2022)

2023-05-16

目录

一、题目

二、题目以及答案 


一、题目

1.C和C++中的struct有什么区别?

2.C++中的struct和class有什么区别?

3.如何判断一段程序是由C编译程序还是由C++编译程序的?

4.C和C++有什么不同?

5.C++中引用跟指针的区别是什么?

6.char str[sizeof(unsigned long)];这个会不会报错,为什么?

7.对于一个频繁使用的短小函数,C和C++分别用什么实现?

8.C++的类型安全?

9.C++如何判断一个操作系统是多少位的?

10.内存分配有哪几种?

11.const关键字的作用有哪些?

12.面向对象的三大基本特征?

二、题目以及答案 

1.C和C++中的struct有什么区别? 

参考答案:

C语言:没有protection行为,不能定义函数,但是能定义函数指针。

C++:有protection行为,也可以定义函数,不能定义函数指针。

2.C++中的struct和class有什么区别?

参考答案:

1.默认继承权限。如果不明确指定,class的继承按private处理,structural的继承按照public处理。

2.成员的默认访问权限。class的成员默认是private权限,struct的成员默认是public。

注意:除了以上两点,struct和class基本上就是一个东西,语法上没有任何其他区别。

3.如何判断一段程序是由C编译程序还是由C++编译程序的? 

参考答案:

        #ifdef  __cplusplus

                        cout<<"C++"<<endl;

        #else

                        cout<<"C"<<endl;

        #endif

4.C和C++有什么不同?

参考答案:

1.C语言是结构化编程语言,C++s面向对象编程语言。

2.C++侧重于对象而不是过程,侧重与类的设计而不是逻辑的设计。

3.C语言适合要求代码量体积小的,效率高的场合,如嵌入式;C++适合更上层的,复杂的。

4.C语言主要是面向过程的(也可以编写面向对象);C++是面向对象的,提供了类。C++编写面向对象比C语言要简单。

5.C++中引用跟指针的区别是什么? 

参考答案:

1.引用必须初始化,而指针不用。

2.引用初始化以后不能改变,而指针可以改变所指的对象。

3.不存在指向空值的引用,但是存在指向空值的指针。

6.char str[sizeof(unsigned long)];这个会不会报错,为什么? 

参考答案:

不会报错。

因为这个sizeof是编译时运算符,编译时就确定了,可以看成和机器有关的常量。

 7.对于一个频繁使用的短小函数,C和C++分别用什么实现?

参考答案:

C语言用宏定义,而C++用inline。 

8.C++的类型安全? 

参考答案:

不安全。两个不同类型之间可以强制转换。

9.C++如何判断一个操作系统是多少位的? 

参考答案:

定义一个指针p,打印出sizeof(p),打印结果是8就是64位,打印结果是4就是32位,打印结果是2就是16位。

10.内存分配有哪几种?

参考答案:

1.静态存储区域分配。

2.栈上分配。

3.堆上分配。

11.const关键字的作用有哪些?

参考答案:

1.限制一个变量的改变,在定义const变量时,需要对它进行初始化。

2.对于指针来说,可以定义指针本身为const,也可以定义指针所指的数据为const,或两者都定义为const。

3.const修饰形参,此参数在函数中无法改变。

4.类的成员函数为const类型,这个函数的成员变量不可改变。

5.对于类的成员函数,指定其返回值为const类型,以使得其返回值不为“左值”。

12.面向对象的三大基本特征? 

参考答案:

1.封装     2.继承     3.多态

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

12道C++经典笔试题及答案(2022) 的相关文章

  • Linux -- 查看进程 top命令 详解

    我们上篇介绍了 xff0c Linux 中的进程等概念 xff0c 那么 xff0c 在Linux 中如何查看进程呢 xff1f xff1f 我们常用到的有两个命令 xff0c PS 和 top 两个命令 xff0c 今天先来介绍下 top
  • 24届春招百度暑假实习笔试第二题

    题干 解答 该题目在解决的时候 xff0c 需要发现就是对于相同的字符我们应该放在一起 xff0c 这样在进行修改的时候 xff0c 对其他字符的影响才会小 然后连续相同字符个数 和 组成的回文子串数目 它们的通解为 an 61 n 2 4
  • ROS学习(八)launch启动文件的使用方法

    前言 使用命令行输入代码需要不断打开终端比较繁琐 xff0c 而且容易输入错误 xff0c 那么有没有什么方法可以快速启动所需节点呢 xff1f 一 launch文件介绍 Launch文件 xff1a 通过XML文件实现多节点的配置和启动
  • 【git】git lfs

    目录 原理 使用方法 报错记录 certificate signed by unknown authority 原理 项目中的大文件会很占空间 git lfs large file storage 将大文件替换为小指针 当真正需要到这些大文
  • gdb调试应用程序记录

    gdb 调试说明 xff1a 判断程序是否为debug版本 xff1a 方法一 xff1a 命令 xff1a gdb a out 注 xff1a 这里的命令是指在Linux终端下面输入的命令 非debug版本 xff0c 会提示 xff1a
  • 3D打印机硬件驱动-马林固件最新版本2.0.X中文注释(3)marlin 2.0.9.2 截至发稿时间2021年12月16日

    Marlin 3D Printer Firmware 头描述详见其他两个文件头描述 Copyright c 2020 MarlinFirmware https github com MarlinFirmware Marlin Based o
  • 字符串结尾‘\0‘

    C语言中字符串的结束标志是 39 0 39 C语言中没有专门的字符串变量 xff0c 通常用一个字符数组来存放一个字符串 xff0c 字符串总是以 39 0 39 作为结束符 39 0 39 就是8位的00000000 xff0c 因为字符
  • 蒙德里安的梦想 状压 DP

    定义 状压 DP 是动态规划的一种 xff0c 通过将状态压缩为整数来达到优化转移的目的 例题 xff1a 蒙德里安的梦想 求把 N M 的棋盘分割成若干个 1 2 的长方形 xff0c 有多少种方案 例如当 N 61 2 xff0c M
  • Hadoop 核心三大件

    一 Hadoop Distributed File System xff0c 简称 HDFS xff0c 是一个分布式文件系统 二 YARN架构 三 MapReduce架构概述 MapReduce将计算过程分为两个阶段 xff1a Map和
  • 努力加油——感想帖

    一直很想写一篇自己的心路历程 xff0c 这篇文章于2022 10 28午编写 2020年7月10日在高考地理考卷上给自己的中学生涯画上了句号 走出考场那一刻 xff0c 心里像是有一块沉甸甸的石头被放了下来 xff0c 但好像自己并不是很
  • 小国王——状压DP

    在 n n 的棋盘上放 k 个国王 xff0c 国王可攻击相邻的 8 个格子 xff0c 求使它们无法互相攻击的方案总数 输入格式 共一行 xff0c 包含两个整数 n 和 k 输出格式 共一行 xff0c 表示方案总数 xff0c 若不能
  • 小国王(目标状态优化版)—— 状态压缩DP

    在 n n 的棋盘上放 k 个国王 xff0c 国王可攻击相邻的 8 个格子 xff0c 求使它们无法互相攻击的方案总数 输入格式 共一行 xff0c 包含两个整数 n 和 k 输出格式 共一行 xff0c 表示方案总数 xff0c 若不能
  • 炮兵阵地——状态压缩DP

    司令部的将军们打算在 N MN M 的网格地图上部署他们的炮兵部队 一个 N MN M 的地图由 NN 行 MM 列组成 xff0c 地图的每一格可能是山地 xff08 用 H 表示 xff09 xff0c 也可能是平原 xff08 用 P
  • hadoop项目实战——奥运会数据分析

    大三学期项目 hadoop MapReduce 奥运会数据分析结果 xff1a 有没需要详细实现方法的小伙伴呀 xff1f 可以在评论区评论一下 如果人多 xff0c 那么后续会详细更新实现方法
  • RT-Thread 内核线程切换原理

    1 背景 本文章主要说明 rtthread 内核线程是如何切换的 xff0c 初学者刚从裸机开发接触 RTOS 时难免会有些不适应 xff0c 明白这部分原理之后就会对 RTOS 有更深的理解 在学习内核线程切换原理之前需要有以下基础知识铺
  • 【多线程】C/C++语言中多线程和简单例子

    目录 前言 一 pthread两种状态joinable和unjoinable 二 thread join 方法存在的必要性 三 为什么要多线程 xff1a 问题 xff1a 简单的多线程编程 线程的数据处理 四 实例代码 C 43 43 C
  • 单片机开发之裸机也能 “多任务”?

    单片机开发之裸机也能 多任务 xff1f 1 背景 对于一些简单的单片机项目 xff0c 没必要非得跑RTOS xff0c 因此 xff0c 很多项目都是在 裸奔 指纯循环加上中断的机制 所以 xff0c 开发出一套好用的裸机框架是非常有必
  • vscode如何运行C++程序

    首先说一下vscode是一个支持跨平台的轻量级编辑器 1 安装c c 43 43 编译器 Linux系统一般都自带gcc和g 43 43 xff0c 但对于Windows系统而言就需要安装Mingw w64来获得编译器 步骤如下 xff1a
  • TX2 安装显卡驱动

    1 官网查询驱动版本 官方 GeForce 驱动程序 NVIDIA 这个版本gcc不合适 xff0c 换了下一个 又换了一个版本 xff0c 依旧有gcc版本问题 但查了一些资料 xff0c 对照一些版本 xff0c 觉得可能gcc冲突并不
  • 04 ROS Client-Service-Server实例

    零 Service机制 Client与Server向ROS MASTER注册MASTER根据Client订阅的信息 xff0c 查阅注册表中是否有提供对应Service的ServerClient收到Server的TCP通信地址Client用

随机推荐

  • ROS2教程 02 功能包

    一 检查别人的功能包依赖 当移植别人的功能包到本机时 xff0c 需要在工作空间目录下检查功能包依赖是否健全 rosdepc span class token function install span i from path src ro
  • 从零开始学习无人机 00 硬件配置

    遥控器 型号 乐迪Radiolink AT9S Pro 固件更新 对遥控器固件作更新 乐迪Radiolink AT9S Pro 固件更新 光流传感器 型号 思动智能ThoneFlow 3901U 开发文档 Pmw3901光流传感器PX4开发
  • 树莓派ubuntu镜像备份详细教程

    1 获取镜像 将配置好环境的树莓派sd卡放入读卡器将读卡器插入电脑在Windows操作系统上使用软件win32diskimager获取镜像将镜像保存到Linux操作系统上某个位置 xff0c 例如ubuntu22 04 2 减小镜像体积 安
  • Java开发必须会的技能!kafka集群3个节点挂掉一个

    Maven权威指南 首先 xff0c 本书适合所有Java程序员阅读 由于自动化构建 依赖管理等问题并不只存在于Java世界 xff0c 因此非Java程序员也能够从该书中获益 无论你是从未接触过Maven 还是已经用了Maven很长时间
  • 大厂首发!阿里面试官跟我死磕MySQL,Java岗

    前言 蓦然回首自己做开发已经十年了 xff0c 这十年中我获得了很多 xff0c 技术能力 培训 出国 大公司的经历 xff0c 还有很多很好的朋友 但再仔细一想 xff0c 这十年中我至少浪费了五年时间 xff0c 这五年可以足够让自己成
  • C语言和数据结构与算法(99)

    1 预处理和关键字 22道 1 1 宏定义是在编译的哪个阶段处理的 xff1f 答案 xff1a 在编译的预处理阶段 xff0c 被处理的 编译预处理包括 xff1a 宏替换 文件包含 条件编译 其他预处理指令 1 2 写一个 标准 宏定义
  • 【MYSQL】同时查询两个表并将结果合并到一起

    目录 从两个表中查不同字段并拼接到一起 xff08 从两个表中查的字段不一样 xff09 将两个表结果合并 xff08 从两个表中查的字段一样 xff09 SQL多表合并UNION ALL和UNION 从两个表中查不同字段并拼接到一起 xf
  • C语言和数据结构与算法(99)

    2 数据类型 xff08 22道 xff09 2 1 用变量a给出下面的定义 xff08 1 xff09 一个整型数 xff1a int a xff08 2 xff09 一个指向整型数的指针 xff08 一重指针 xff09 xff1a i
  • 详解STL---vector

    目录 1 vector的介绍及应用 1 1vector的介绍 1 2vector的使用 1 2 1 vector的定义 1 2 2 vector iterator 的使用 1 2 3 vector 空间增长问题 1 2 4 vector 的
  • C#中的委托(Delegate)和事件 (Event)详解与使用范例

    一 委托 Delegate 1 委托 Delegate 简介 最近天气晴雨不定 你因为害怕打游戏时忘记在下雨时收衣服或者在天晴时把衣服挂出去 于是你委托好友小明在天气发生变化时打电话通知你 这就是一种委托 下面是这种委托的实例代码 定义一个
  • 学习OpenMV(一)详细参数及简单介绍

    目录 一 Open MV 简介 1 OpenMV摄像头的特点 xff1a 2 OpenMV摄像头的应用 xff1a 3 规格 xff1a 二 搭建环境 xff0c Open MV IDE安装 1 Windows系统 2 Linux系统 三
  • IEEE trans on cybernetic被拒后可以和主编argue争取下吗

    IEEE trans on cybernetic xff1a 一审两个人审稿人 xff0c 主编的决定是reject amp resubmit 二审又增加了一个审稿人 xff0c 前两个审稿人都同意发表的情况下 xff0c 新加的审稿人提了
  • 获取IntelRealSense d435i 相机内参

    获取IntelRealSense d435i 相机内参 摘要实现 摘要 本文提供了一种获取IntelRealSense d435i相机内参的方法 实现 span class token macro property span class t
  • 用Clion代替keil对CubeMX生成代码进行编写的基础准备

    网上教程比较多 首先需要安装CubeMX Clion 以及相关的依赖 xff0c 不一一赘述 xff0c 可以参考以下链接 CLion xff1a 安装 搭建 配置 插件 忘尘 丶莫负的博客 CSDN博客 clion安装插件 在确认搭建好环
  • Ubuntu下如何创建工作空间(详细)

    Ubuntu下工作空间的创建方法 xff1a xff08 1 xff09 mkdir p catkin ws src 创建工作空间catkin ws和子目录src xff0c 自定义空间名 cd catkin ws 进入到工作空间catki
  • Turtlebot移动机器人gazebo仿真及自动导航(详细级)

    目的 在仿真环境中控制Turtlebot3 Burger运动 slam和自动导航 环境 xff1a 双系统下ROS为noetic xff08 其他版本的ROS注意在下载软件包时改成自己的ROS xff09 步骤 xff1a xff08 1
  • 【linux】linux中fork()详解(实例讲解)|fork的运行机制

    目录 linux中fork xff08 xff09 函数详解 从一道面试题谈linux下fork的运行机制 linux中fork xff08 xff09 函数详解 原文 xff1a linux中fork xff08 xff09 函数详解 x
  • 当面试官问你Promise的时候,他究竟想听到什么?

    1 什么是Promise xff1f Promise是异步操作的一种解决方案 2 为什么要使用Promise xff1f Promise能很好的解决层层嵌套的回调函数 xff0c 即回调地狱 callback hell 的问题 3 什么是回
  • win10安装Ubuntu16.04

    第一次安装双系统 xff0c 踩了不少坑 xff0c 花了两三天才装好 xff0c 因为电脑的不同 xff08 本人电脑联想小新i5 xff09 xff0c 网上那些安装过程有些不适用 xff0c 所以花了好长时间 xff0c 甚至差点决定
  • 12道C++经典笔试题及答案(2022)

    目录 一 题目 二 题目以及答案 一 题目 1 C和C 43 43 中的struct有什么区别 2 C 43 43 中的struct和class有什么区别 xff1f 3 如何判断一段程序是由C编译程序还是由C 43 43 编译程序的 xf