当前位置: 首页 > news >正文

c++面试技巧-基础篇

1.面试官:简述C++语言的优缺点。

应聘者:C++语言的优缺点如下。

• C++语言的优点:C++语言既保留了C语言的有效性、灵活性、便于移植等全部精华和特点,又添加了面向对象编程的支持,具有强大的编程功能,可方便地构造出模拟现实问题的实体和操作;用C++编写的程序可读性好,生成的代码质量高,编写出的程序具有结构清晰、易于扩充等优良特性,适合于各种应用软件、系统软件的程序设计。

• C++语言的缺点:首先C++比C增加很多功能,也注定它比C更消耗内存;C++的可移植性一般;C++的动态对象必须及时销毁,否则可能会造成内存泄漏。

2.面试官:程序调试输出过程中一般会有几种错误,分别是什么?

应聘者:程序调试输出过程一般有语法错误和警告信息两种。

• 语法错误:常见的很多语法错误是输入的格式不对造成的,一般情况进行简单的修改就可以执行,一个语法错误可以引发多条Error信息,因此修改一个错误后,最好重新编译一次,以便提高工作效率。

• 警告信息:一般是违反了C/C++的规则,因而系统给出警告信息,警告信息不会影响程序的执行。

3.面试官:#include的作用是什么?

应聘者:这是一个预处理器编译指令,总是以字符#打头。预处理器在调用编译器时,该指令使得预处理器将include后面的<>中的文件读入程序。就是事先把后面需要使用的文件在开头处就定义了。

4.面试官:简述C++语言程序的组成。

应聘者:C++程序结构由编译预处理、注释和程序等组成。也有人称程序为函数,因为程序是由一个主函数和若干个函数组成的。

5.面试官:单行注释和多行注释之间有何不同?

应聘者:单行注释到行尾就结束;而多行注释到“/”才结束。即使是函数的结尾也不能作为多行注释的结尾,必须要加上注释结尾标记“/”,否则将出现编译错误。

6.面试官:字符串常量"A"与字符常量'A'有什么不同?

应聘者:C++规定在每一个字符串的结尾加一个字符串结束标记,以便系统能据此判断字符串是否结束。字符串结束标记就是'\0'。所以在计算机内存中"A"其实占了两个字符存储位置,一个是字符'A',一个是字符'\0'。

(1)书写格式不同:字符常量用' '(单引号),而字符串常量用" "(双引号)。

(2)表现形式不同:字符常量是单个字符,字符串常量是一个或多个字符序列。

(3)存储方式不同:字符常量占用1字节,字符串常量占用1个以上字节(比字符串的长度多一个)。

7.面试官:变量的存储类型有哪些?

应聘者:存储类别指的是数据在内存中存储的方法。存储方法分为静态存储和动态存储两大类。具体包含4种:自动的(auto)、静态的(static)、寄存器的(register)和外部的(extern)。根据变量的存储类别,可以知道变量的作用域和存储期。

8.面试官:实型数据的有效位数各是多少?

应聘者:有效数字是表示精度,一般是说一个近似数四舍五入到哪一位,就说明这个数字精确到那一位,float型的有效数字是小数点后6位,多于6位以后的数就不太可靠了。double型的有效数字是小数点后15位,15位以后的数也就不可靠了。取值范围是能表示的最小值和最大值之间的一个数域,超出这个数域的值就根本不能表示了。

9.面试官:字符变量在内存中如何存储?

应聘者:每个字符变量被分配一个字节的内存空间,因此只能存放一个字符。字符值是以ASCII码的形式存放在变量的内存单元之中的。取值范围为-128~127。ASCII码是一些整型的数据,这也造成了字符型变量在一定程度上可以和整型进行换算。因为数字1~9的ASCII码是连续的,而且是整型,所以对于输入的数字字符,可以在程序内部,换算成真正的整型数据来处理(必要的时候)。字母的ASCII码从A~Z和a~z都是分别连续的,这也使得我们可以方便地进行大小写的转换。字符型变量可以让我们方便地处理一些输入问题。

相关文章:

c++面试技巧-基础篇

1.面试官&#xff1a;简述C语言的优缺点。 应聘者&#xff1a;C语言的优缺点如下。 • C语言的优点&#xff1a;C语言既保留了C语言的有效性、灵活性、便于移植等全部精华和特点&#xff0c;又添加了面向对象编程的支持&#xff0c;具有强大的编程功能&#xff0c;可方便地构…...

三八妇女节即将到来,跨境电商如何玩转节日营销?

随着国际妇女节的到来&#xff0c;跨境电商商家们都开始了为自己的店铺进行节日营销的准备。商家做节日营销的目的都是一样的&#xff0c;无非都是增加曝光率&#xff0c;拉动客流&#xff0c;增加营业额。但是每一个节日营销的形式是可以不一样的。今年有什么营销玩法呢&#…...

【Java学习笔记】10.条件语句 - if...else及switch case 语句

前言 本章介绍Java的条件语句 - if…else和switch case 语句。 Java 条件语句 - if…else Java 中的条件语句允许程序根据条件的不同执行不同的代码块。 一个 if 语句包含一个布尔表达式和一条或多条语句。 语法 if 语句的语法如下&#xff1a; if(布尔表达式) {//如果布…...

解析STM32启动过程

相对于ARM上一代的主流ARM7/ARM9内核架构&#xff0c;新一代Cortex内核架构的启动方式有了比较大的变化。ARM7/ARM9内核的控制器在复位后&#xff0c;CPU会从存储空间的绝对地址0x000000取出第一条指令执行复位中断服务程序的方式启动&#xff0c;即固定了复位后的起始地址为0x…...

微信小程序开发自学笔记 —— 八、小程序基础库的更新迭代

小程序基础库的更新迭代 小程序基础库 小程序的运行环境是分成渲染层和逻辑层的&#xff0c;在渲染层可以用各类组件组建界面的元素&#xff0c;在逻辑层可以用各类API来处理各种逻辑&#xff0c;组件、API其实都是小程序基础库进行包装提供的&#xff0c;基础库的职责还要处…...

Mysql迁移Postgresql

目录原理环境准备操作系统(Centos7)Mysql客户端安装Psql客户端安装数据库用户空字符串处理成null导表脚本dbmysql2pgmysqlcopy测试在mysql中建表导表测试查看pg中的表原理 Mysql抽取&#xff1a;mysql命令重定向到操作系统文件&#xff0c;处理成csv文件&#xff1b; PG装载&a…...

关于信息安全认证CISP、PTE对比分析

CISP 注册信息安全专业人员 CISP-PTE 注册渗透测试工程师&#xff08;以下简称PTE&#xff09; 1 、发证机构 CISP与PTE的发证机构都是中国信息安全测评中心&#xff0c;政府背景给认证做背书&#xff0c;学员信息都在中国政府可控的机构手中&#xff1b; 如果想在政府、国…...

游戏场景编辑器和骨骼动画相关软件

游戏场景编辑器 一.Tiled(2D) Tiled 是帮助你开发游戏内容的 2D 地图编辑器。它的主要功能是可以编辑各种形式的瓦片地图&#xff0c;还支持通过用空图片这种强大的方式来标记额外信息给游戏使用。Tiled 关注的是总体灵活性&#xff0c;同时尽量保持直观性。 Tiled Map 不但…...

vue3常用的API

目录 1.ref函数 2.reactive函数 3.reactive对比ref 4.computed函数 5.watch函数 6.toRef 7..provide && inject 1.ref函数 作用: 定义一个响应式的数据 语法: const xxx ref(initValue) 创建一个包含响应式数据的引用对象&#xff08;reference对象&#xff…...

Qt中使用

LIB库路径&#xff0c;include 头文件&#xff0c;运行的时候记得吧dll库带上&#xff0c;这基本就完成了。准备工作&#xff1a;Qt可以是傻瓜式的安装就行&#xff0c;GE的驱动里面有exe&#xff0c;直接点击安装即可&#xff0c;完了记得到安装路径把“.h”“.liib”和“.dll…...

controller-runtime搭建operator开发环境

目录 基本结构 注入CRD 基本结构 首先下载相应的go pkg go get -u sigs.k8s.io/controller-runtime 接下来需要创建控制器和Manager Operator的本质是一个可重入的队列编程模式&#xff0c;而Manager可以用来管理Controller、Admission Webhook&#xff0c;包括访问资源对…...

FPGA使用GTX实现SFP光纤收发SDI视频 全网首创略显高端 提供工程源码和技术支持

目录1、前言2、设计思路和框架3、vivado工程详解4、上板调试验证并演示5、福利&#xff1a;工程代码的获取1、前言 FPGA实现SDI视频编解码目前有两种方案&#xff1a; 一是使用专用编解码芯片&#xff0c;比如典型的接收器GS2971&#xff0c;发送器GS2972&#xff0c;优点是简…...

Django 之 CharField 和 TextField

CharField test_char models.CharField(max_length288)设置长度为 288 并不会报错&#xff0c;这取决于你的数据库后端&#xff0c;mysql char 类型长度为 255&#xff0c;django 里面设置超过 255 并不会有提示&#xff0c;个人感觉有点误导人&#xff0c;起码给个警告也行&…...

recyclerview 使用的坑

1.有不同的布局 12_GridLayoutManager setSpanSizeLookup()方法 - 简书 setSpanSizeLookup 这个方法要会 spanCount和 getSpanSize spanCount/getSpanSize() 才是这一项所占的宽度 2.均分 item布局要设置宽度为match_paraent 3.设置完了。发现高度不一样&#xff0c;…...

DBeaver连接mysql、oracle数据库

1. DBeaver连接mysql 1&#xff09; 下载DBeaver https://dbeaver.io/download/&#xff0c;并安装 2) 新建数据库连接 3&#xff09;选择mysql驱动程序 4&#xff09;填写连接设置内容 5&#xff09;点击 “编辑驱动设置”&#xff0c;并填写相关信息 6&#xff09;选择本地…...

Kivy GridLayout 布局

Kivy GridLayout 是一种用于构建用户界面的布局类型&#xff0c;可以帮助我们快速创建具有固定列和行的网格布局。GridLayout 布局是可以适用于任意数量的行和列的布局&#xff0c;然后在这些行和列中放置 UI 元素。 Kivy 的 GridLayout 使用起来类似于 HTML 的表格&#xff0c…...

Spark高手之路2—Spark安装配置

文章目录Spark 运行环境一、Local 模式1. 下载压缩包2.上传到服务器3. 解压4. 启动 Local 环境5. 命令行工具6. 退出本地模式7. 提交应用二、Standalone 模式1. 解压2. 修改配置文件1&#xff09;进入解压缩后路径的 conf 目录&#xff0c;复制 workers.template 文件为 worker…...

Java中对象的比较

目录元素的比较基本类型的比较引用类型的比较1. 覆写基类的equals2. 基于Comparble接口类的比较3. 基于比较器比较三种方法对比元素的比较 基本类型的比较 这里就拿整型, 字符型, 布尔型 为例: public static void main(String[] args) {int a 10;int b 20;System.out.pri…...

Python编程训练题2

1.11 有 n 盏灯&#xff0c;编号 1&#xff5e;n&#xff08;0<n<100&#xff09;。第 1 个人把所有灯打开&#xff0c;第 2 个人按下所有编号为 2 的倍数的开关&#xff08;这些灯将被关掉&#xff09;&#xff0c;第 3 个人按下所有编号为 3 的倍数的开关&#xff08;其…...

Shifu基础功能:设备管理

设备管理 deviceshifu_configmap.yaml中的telemetries表示自动测量记录传导。Shifu通过telemetries中设置的方法&#xff0c;以指定时间向设备周期性地发送请求&#xff0c;来判断设备的连接情况。如果设备出现故障或者连接出现问题&#xff0c;edgeDevice的状态将发生改变&am…...

观成科技:隐蔽隧道工具Ligolo-ng加密流量分析

1.工具介绍 Ligolo-ng是一款由go编写的高效隧道工具&#xff0c;该工具基于TUN接口实现其功能&#xff0c;利用反向TCP/TLS连接建立一条隐蔽的通信信道&#xff0c;支持使用Let’s Encrypt自动生成证书。Ligolo-ng的通信隐蔽性体现在其支持多种连接方式&#xff0c;适应复杂网…...

vscode(仍待补充)

写于2025 6.9 主包将加入vscode这个更权威的圈子 vscode的基本使用 侧边栏 vscode还能连接ssh&#xff1f; debug时使用的launch文件 1.task.json {"tasks": [{"type": "cppbuild","label": "C/C: gcc.exe 生成活动文件"…...

Qt Http Server模块功能及架构

Qt Http Server 是 Qt 6.0 中引入的一个新模块&#xff0c;它提供了一个轻量级的 HTTP 服务器实现&#xff0c;主要用于构建基于 HTTP 的应用程序和服务。 功能介绍&#xff1a; 主要功能 HTTP服务器功能&#xff1a; 支持 HTTP/1.1 协议 简单的请求/响应处理模型 支持 GET…...

Python如何给视频添加音频和字幕

在Python中&#xff0c;给视频添加音频和字幕可以使用电影文件处理库MoviePy和字幕处理库Subtitles。下面将详细介绍如何使用这些库来实现视频的音频和字幕添加&#xff0c;包括必要的代码示例和详细解释。 环境准备 在开始之前&#xff0c;需要安装以下Python库&#xff1a;…...

android13 app的触摸问题定位分析流程

一、知识点 一般来说,触摸问题都是app层面出问题,我们可以在ViewRootImpl.java添加log的方式定位;如果是touchableRegion的计算问题,就会相对比较麻烦了,需要通过adb shell dumpsys input > input.log指令,且通过打印堆栈的方式,逐步定位问题,并找到修改方案。 问题…...

掌握 HTTP 请求:理解 cURL GET 语法

cURL 是一个强大的命令行工具&#xff0c;用于发送 HTTP 请求和与 Web 服务器交互。在 Web 开发和测试中&#xff0c;cURL 经常用于发送 GET 请求来获取服务器资源。本文将详细介绍 cURL GET 请求的语法和使用方法。 一、cURL 基本概念 cURL 是 "Client URL" 的缩写…...

「全栈技术解析」推客小程序系统开发:从架构设计到裂变增长的完整解决方案

在移动互联网营销竞争白热化的当下&#xff0c;推客小程序系统凭借其裂变传播、精准营销等特性&#xff0c;成为企业抢占市场的利器。本文将深度解析推客小程序系统开发的核心技术与实现路径&#xff0c;助力开发者打造具有市场竞争力的营销工具。​ 一、系统核心功能架构&…...

Oracle11g安装包

Oracle 11g安装包 适用于windows系统&#xff0c;64位 下载路径 oracle 11g 安装包...

【Kafka】Kafka从入门到实战:构建高吞吐量分布式消息系统

Kafka从入门到实战:构建高吞吐量分布式消息系统 一、Kafka概述 Apache Kafka是一个分布式流处理平台,最初由LinkedIn开发,后成为Apache顶级项目。它被设计用于高吞吐量、低延迟的消息处理,能够处理来自多个生产者的海量数据,并将这些数据实时传递给消费者。 Kafka核心特…...

qt+vs Generated File下的moc_和ui_文件丢失导致 error LNK2001

qt 5.9.7 vs2013 qt add-in 2.3.2 起因是添加一个新的控件类&#xff0c;直接把源文件拖进VS的项目里&#xff0c;然后VS卡住十秒&#xff0c;然后编译就报一堆 error LNK2001 一看项目的Generated Files下的moc_和ui_文件丢失了一部分&#xff0c;导致编译的时候找不到了。因…...