Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/0voice/interview_internal_reference

2023年最新总结,阿里,腾讯,百度,美团,头条等技术面试题目,以及答案,专家出题人分析汇总。
https://github.com/0voice/interview_internal_reference

cpu high-performance interview mongodb mysql network nginx redis storage zookeeper

Last synced: 1 day ago
JSON representation

2023年最新总结,阿里,腾讯,百度,美团,头条等技术面试题目,以及答案,专家出题人分析汇总。

Awesome Lists containing this project

README

        

## 2023年最新总结,阿里,腾讯,百度,美团,头条等技术面试题目,以及答案,专家出题人分析汇总。持续更新中。

* [阿里篇](#1)
* [华为篇](#2)
* [百度篇](#3)
* [腾讯篇](#4)
* [美团篇](#5)
* [头条篇](#6)
* [滴滴篇](#7)
* [京东篇](#8)
* [MySQL篇](#9)
* [Redis篇](#10)
* [MongoDB篇](#11)
* [Zookeeper篇](#12)
* [Nginx篇](#13)
* [算法篇](#14)
* [内存篇](#15)
* [cpu篇](#16)
* [磁盘篇](#17)
* [网络通信篇](#18)
* [安全篇](#19)
* [并发篇](#20)

阿里篇

---

##### [1.1.1 如何实现一个高效的单向链表逆序输出?](01.阿里篇/1.1.1%20%E5%A6%82%E4%BD%95%E5%AE%9E%E7%8E%B0%E4%B8%80%E4%B8%AA%E9%AB%98%E6%95%88%E7%9A%84%E5%8D%95%E5%90%91%E9%93%BE%E8%A1%A8%E9%80%86%E5%BA%8F%E8%BE%93%E5%87%BA%EF%BC%9F.md)

##### [1.1.2 已知sqrt(2)约等于1.414,要求不用数学库,求sqrt(2)精确到小数点后10位](01.阿里篇/1.1.2%20%E5%B7%B2%E7%9F%A5sqrt%282%29%E7%BA%A6%E7%AD%89%E4%BA%8E1.414%EF%BC%8C%E8%A6%81%E6%B1%82%E4%B8%8D%E7%94%A8%E6%95%B0%E5%AD%A6%E5%BA%93%EF%BC%8C%E6%B1%82sqrt%282%29%E7%B2%BE%E7%A1%AE%E5%88%B0%E5%B0%8F%E6%95%B0%E7%82%B9%E5%90%8E10%E4%BD%8D.md)

##### [1.1.3 给定一个二叉搜索树(BST),找到树中第 K 小的节点](01.阿里篇/1.1.3%20%E7%BB%99%E5%AE%9A%E4%B8%80%E4%B8%AA%E4%BA%8C%E5%8F%89%E6%90%9C%E7%B4%A2%E6%A0%91%28BST%29%EF%BC%8C%E6%89%BE%E5%88%B0%E6%A0%91%E4%B8%AD%E7%AC%AC%20K%20%E5%B0%8F%E7%9A%84%E8%8A%82%E7%82%B9.md)

##### [1.1.4 LRU缓存机制](01.阿里篇/1.1.4%20LRU%E7%BC%93%E5%AD%98%E6%9C%BA%E5%88%B6.md)

##### [1.1.5 关于epoll和select的区别,以下哪些说法是正确的](01.阿里篇/1.1.5%20%E5%85%B3%E4%BA%8Eepoll%E5%92%8Cselect%E7%9A%84%E5%8C%BA%E5%88%AB%EF%BC%8C%E4%BB%A5%E4%B8%8B%E5%93%AA%E4%BA%9B%E8%AF%B4%E6%B3%95%E6%98%AF%E6%AD%A3%E7%A1%AE%E7%9A%84.md)

##### [1.1.6 从innodb的索引结构分析,为什么索引的 key 长度不能太长](01.阿里篇/1.1.6%20%E4%BB%8Einnodb%E7%9A%84%E7%B4%A2%E5%BC%95%E7%BB%93%E6%9E%84%E5%88%86%E6%9E%90%EF%BC%8C%E4%B8%BA%E4%BB%80%E4%B9%88%E7%B4%A2%E5%BC%95%E7%9A%84%20key%20%E9%95%BF%E5%BA%A6%E4%B8%8D%E8%83%BD%E5%A4%AA%E9%95%BF.md)

##### [1.1.7 MySQL的数据如何恢复到任意时间点?](01.阿里篇/1.1.7%20MySQL%E7%9A%84%E6%95%B0%E6%8D%AE%E5%A6%82%E4%BD%95%E6%81%A2%E5%A4%8D%E5%88%B0%E4%BB%BB%E6%84%8F%E6%97%B6%E9%97%B4%E7%82%B9%EF%BC%9F.md)

##### [1.1.8 什么是静态关联?什么是动态关联?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#304-%E4%BB%80%E4%B9%88%E6%98%AF%E9%9D%99%E6%80%81%E5%85%B3%E8%81%94%E4%BB%80%E4%B9%88%E6%98%AF%E5%8A%A8%E6%80%81%E5%85%B3%E8%81%94)

##### [1.1.9 输入 ping IP 后敲回车,发包前会发生什么?](01.阿里篇/1.1.9%20%E8%BE%93%E5%85%A5%20ping%20IP%20%E5%90%8E%E6%95%B2%E5%9B%9E%E8%BD%A6%EF%BC%8C%E5%8F%91%E5%8C%85%E5%89%8D%E4%BC%9A%E5%8F%91%E7%94%9F%E4%BB%80%E4%B9%88%EF%BC%9F.md)

##### [1.2.0 请解释下为什么鹿晗发布恋情的时候,微博系统会崩溃,如何解决?](01.阿里篇/1.2.0%20%E8%AF%B7%E8%A7%A3%E9%87%8A%E4%B8%8B%E4%B8%BA%E4%BB%80%E4%B9%88%E9%B9%BF%E6%99%97%E5%8F%91%E5%B8%83%E6%81%8B%E6%83%85%E7%9A%84%E6%97%B6%E5%80%99%EF%BC%8C%E5%BE%AE%E5%8D%9A%E7%B3%BB%E7%BB%9F%E4%BC%9A%E5%B4%A9%E6%BA%83%EF%BC%8C%E5%A6%82%E4%BD%95%E8%A7%A3%E5%86%B3%EF%BC%9F.md)

##### [1.2.1 现有一批邮件需要发送给订阅顾客,且有一个集群(集群的节点数不定,会动态扩容缩容)来负责具体的邮件发送任务,如何让系统尽快地完成发送?](01.阿里篇/1.2.1%20%E7%8E%B0%E6%9C%89%E4%B8%80%E6%89%B9%E9%82%AE%E4%BB%B6%E9%9C%80%E8%A6%81%E5%8F%91%E9%80%81%E7%BB%99%E8%AE%A2%E9%98%85%E9%A1%BE%E5%AE%A2%EF%BC%8C%E4%B8%94%E6%9C%89%E4%B8%80%E4%B8%AA%E9%9B%86%E7%BE%A4%EF%BC%88%E9%9B%86%E7%BE%A4%E7%9A%84%E8%8A%82%E7%82%B9%E6%95%B0%E4%B8%8D%E5%AE%9A%EF%BC%8C%E4%BC%9A%E5%8A%A8%E6%80%81%E6%89%A9%E5%AE%B9%E7%BC%A9%E5%AE%B9%EF%BC%89%E6%9D%A5%E8%B4%9F%E8%B4%A3%E5%85%B7%E4%BD%93%E7%9A%84%E9%82%AE%E4%BB%B6%E5%8F%91%E9%80%81%E4%BB%BB%E5%8A%A1%EF%BC%8C%E5%A6%82%E4%BD%95%E8%AE%A9%E7%B3%BB%E7%BB%9F%E5%B0%BD%E5%BF%AB%E5%9C%B0%E5%AE%8C%E6%88%90%E5%8F%91%E9%80%81%EF%BC%9F.md)

##### [1.2.2 有一批气象观测站,现需要获取这些站点的观测数据,并存储到 Hive 中。但是气象局只提供了 api 查询,每次只能查询单个观测点。那么如果能够方便快速地获取到所有的观测点的数据?](01.阿里篇/1.2.2%20%E6%9C%89%E4%B8%80%E6%89%B9%E6%B0%94%E8%B1%A1%E8%A7%82%E6%B5%8B%E7%AB%99%EF%BC%8C%E7%8E%B0%E9%9C%80%E8%A6%81%E8%8E%B7%E5%8F%96%E8%BF%99%E4%BA%9B%E7%AB%99%E7%82%B9%E7%9A%84%E8%A7%82%E6%B5%8B%E6%95%B0%E6%8D%AE%EF%BC%8C%E5%B9%B6%E5%AD%98%E5%82%A8%E5%88%B0%20Hive%20%E4%B8%AD%E3%80%82%E4%BD%86%E6%98%AF%E6%B0%94%E8%B1%A1%E5%B1%80%E5%8F%AA%E6%8F%90%E4%BE%9B%E4%BA%86%20api%20%E6%9F%A5%E8%AF%A2%EF%BC%8C%E6%AF%8F%E6%AC%A1%E5%8F%AA%E8%83%BD%E6%9F%A5%E8%AF%A2%E5%8D%95%E4%B8%AA%E8%A7%82%E6%B5%8B%E7%82%B9%E3%80%82%E9%82%A3%E4%B9%88%E5%A6%82%E6%9E%9C%E8%83%BD%E5%A4%9F%E6%96%B9%E4%BE%BF%E5%BF%AB%E9%80%9F%E5%9C%B0%E8%8E%B7%E5%8F%96%E5%88%B0%E6%89%80%E6%9C%89%E7%9A%84%E8%A7%82%E6%B5%8B%E7%82%B9%E7%9A%84%E6%95%B0%E6%8D%AE%EF%BC%9F.md)

##### [1.2.3 如何实现两金额数据相加(最多小数点两位)](01.阿里篇/1.2.3%20%E5%A6%82%E4%BD%95%E5%AE%9E%E7%8E%B0%E4%B8%A4%E9%87%91%E9%A2%9D%E6%95%B0%E6%8D%AE%E7%9B%B8%E5%8A%A0%EF%BC%88%E6%9C%80%E5%A4%9A%E5%B0%8F%E6%95%B0%E7%82%B9%E4%B8%A4%E4%BD%8D%EF%BC%89.md)

##### [1.2.4 关于并行计算的一些基础开放问题](01.阿里篇/1.2.4%20%E5%85%B3%E4%BA%8E%E5%B9%B6%E8%A1%8C%E8%AE%A1%E7%AE%97%E7%9A%84%E4%B8%80%E4%BA%9B%E5%9F%BA%E7%A1%80%E5%BC%80%E6%94%BE%E9%97%AE%E9%A2%98.md)

##### [1.2.5 请计算XILINX公司VU9P芯片的算力相当于多少TOPS,给出计算过程与公式](01.阿里篇/1.2.5%20%E8%AF%B7%E8%AE%A1%E7%AE%97XILINX%E5%85%AC%E5%8F%B8VU9P%E8%8A%AF%E7%89%87%E7%9A%84%E7%AE%97%E5%8A%9B%E7%9B%B8%E5%BD%93%E4%BA%8E%E5%A4%9A%E5%B0%91TOPS%EF%BC%8C%E7%BB%99%E5%87%BA%E8%AE%A1%E7%AE%97%E8%BF%87%E7%A8%8B%E4%B8%8E%E5%85%AC%E5%BC%8F.md)

##### [1.2.6 一颗现代处理器,每秒大概可以执行多少条简单的MOV指令,有哪些主要的影响因素](01.阿里篇/1.2.6%20%E4%B8%80%E9%A2%97%E7%8E%B0%E4%BB%A3%E5%A4%84%E7%90%86%E5%99%A8%EF%BC%8C%E6%AF%8F%E7%A7%92%E5%A4%A7%E6%A6%82%E5%8F%AF%E4%BB%A5%E6%89%A7%E8%A1%8C%E5%A4%9A%E5%B0%91%E6%9D%A1%E7%AE%80%E5%8D%95%E7%9A%84MOV%E6%8C%87%E4%BB%A4%EF%BC%8C%E6%9C%89%E5%93%AA%E4%BA%9B%E4%B8%BB%E8%A6%81%E7%9A%84%E5%BD%B1%E5%93%8D%E5%9B%A0%E7%B4%A0.md)

##### [1.2.7 请分析 MaxCompute 产品与分布式技术的关系、当前大数据计算平台类产品的市场现状和发展趋势](01.阿里篇/1.2.7%20%E8%AF%B7%E5%88%86%E6%9E%90%20MaxCompute%20%E4%BA%A7%E5%93%81%E4%B8%8E%E5%88%86%E5%B8%83%E5%BC%8F%E6%8A%80%E6%9C%AF%E7%9A%84%E5%85%B3%E7%B3%BB%E3%80%81%E5%BD%93%E5%89%8D%E5%A4%A7%E6%95%B0%E6%8D%AE%E8%AE%A1%E7%AE%97%E5%B9%B3%E5%8F%B0%E7%B1%BB%E4%BA%A7%E5%93%81%E7%9A%84%E5%B8%82%E5%9C%BA%E7%8E%B0%E7%8A%B6%E5%92%8C%E5%8F%91%E5%B1%95%E8%B6%8B%E5%8A%BF.md)

##### [1.2.8 对大数据平台中的元数据管理是怎么理解的,元数据收集管理体系是怎么样的,会对大数据应用有什么样的影响](01.阿里篇/1.2.8%20%E5%AF%B9%E5%A4%A7%E6%95%B0%E6%8D%AE%E5%B9%B3%E5%8F%B0%E4%B8%AD%E7%9A%84%E5%85%83%E6%95%B0%E6%8D%AE%E7%AE%A1%E7%90%86%E6%98%AF%E6%80%8E%E4%B9%88%E7%90%86%E8%A7%A3%E7%9A%84%EF%BC%8C%E5%85%83%E6%95%B0%E6%8D%AE%E6%94%B6%E9%9B%86%E7%AE%A1%E7%90%86%E4%BD%93%E7%B3%BB%E6%98%AF%E6%80%8E%E4%B9%88%E6%A0%B7%E7%9A%84%EF%BC%8C%E4%BC%9A%E5%AF%B9%E5%A4%A7%E6%95%B0%E6%8D%AE%E5%BA%94%E7%94%A8%E6%9C%89%E4%BB%80%E4%B9%88%E6%A0%B7%E7%9A%84%E5%BD%B1%E5%93%8D.md)

##### [1.2.9 你理解常见如阿里,和友商大数据平台的技术体系差异以及发展趋势和技术瓶颈,在存储和计算两个方面进行概述](01.阿里篇/1.2.9%20%E4%BD%A0%E7%90%86%E8%A7%A3%E5%B8%B8%E8%A7%81%E5%A6%82%E9%98%BF%E9%87%8C%EF%BC%8C%E5%92%8C%E5%8F%8B%E5%95%86%E5%A4%A7%E6%95%B0%E6%8D%AE%E5%B9%B3%E5%8F%B0%E7%9A%84%E6%8A%80%E6%9C%AF%E4%BD%93%E7%B3%BB%E5%B7%AE%E5%BC%82%E4%BB%A5%E5%8F%8A%E5%8F%91%E5%B1%95%E8%B6%8B%E5%8A%BF%E5%92%8C%E6%8A%80%E6%9C%AF%E7%93%B6%E9%A2%88%EF%BC%8C%E5%9C%A8%E5%AD%98%E5%82%A8%E5%92%8C%E8%AE%A1%E7%AE%97%E4%B8%A4%E4%B8%AA%E6%96%B9%E9%9D%A2%E8%BF%9B%E8%A1%8C%E6%A6%82%E8%BF%B0.md)

##### [1.3.0 虚函数是如何实现的?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#305-%E8%99%9A%E5%87%BD%E6%95%B0%E6%98%AF%E5%A6%82%E4%BD%95%E5%AE%9E%E7%8E%B0%E7%9A%84)

##### [1.3.1 最大频率栈](01.阿里篇/1.3.1%20%E6%9C%80%E5%A4%A7%E9%A2%91%E7%8E%87%E6%A0%88.md)

##### [1.3.2 给定一个链表,删除链表的倒数第N个节点,并且返回链表的头结点](01.阿里篇/1.3.2%20%E7%BB%99%E5%AE%9A%E4%B8%80%E4%B8%AA%E9%93%BE%E8%A1%A8%EF%BC%8C%E5%88%A0%E9%99%A4%E9%93%BE%E8%A1%A8%E7%9A%84%E5%80%92%E6%95%B0%E7%AC%ACN%E4%B8%AA%E8%8A%82%E7%82%B9%EF%BC%8C%E5%B9%B6%E4%B8%94%E8%BF%94%E5%9B%9E%E9%93%BE%E8%A1%A8%E7%9A%84%E5%A4%B4%E7%BB%93%E7%82%B9.md)

##### [1.3.3 如果让你设计一个通用的、支持各种数据库秒级备份和恢复的系统,你会如何设计](01.阿里篇/1.3.3%20%E5%A6%82%E6%9E%9C%E8%AE%A9%E4%BD%A0%E8%AE%BE%E8%AE%A1%E4%B8%80%E4%B8%AA%E9%80%9A%E7%94%A8%E7%9A%84%E3%80%81%E6%94%AF%E6%8C%81%E5%90%84%E7%A7%8D%E6%95%B0%E6%8D%AE%E5%BA%93%E7%A7%92%E7%BA%A7%E5%A4%87%E4%BB%BD%E5%92%8C%E6%81%A2%E5%A4%8D%E7%9A%84%E7%B3%BB%E7%BB%9F%EF%BC%8C%E4%BD%A0%E4%BC%9A%E5%A6%82%E4%BD%95%E8%AE%BE%E8%AE%A1.md)

##### [1.3.4 如果让你来设计一个支持数据库、NOSQL 和大数据之间数据实时流动的数据流及处理的系统,你会考虑哪些问题?如何设计?](01.阿里篇/1.3.4%20%E5%A6%82%E6%9E%9C%E8%AE%A9%E4%BD%A0%E6%9D%A5%E8%AE%BE%E8%AE%A1%E4%B8%80%E4%B8%AA%E6%94%AF%E6%8C%81%E6%95%B0%E6%8D%AE%E5%BA%93%E3%80%81NOSQL%20%E5%92%8C%E5%A4%A7%E6%95%B0%E6%8D%AE%E4%B9%8B%E9%97%B4%E6%95%B0%E6%8D%AE%E5%AE%9E%E6%97%B6%E6%B5%81%E5%8A%A8%E7%9A%84%E6%95%B0%E6%8D%AE%E6%B5%81%E5%8F%8A%E5%A4%84%E7%90%86%E7%9A%84%E7%B3%BB%E7%BB%9F%EF%BC%8C%E4%BD%A0%E4%BC%9A%E8%80%83%E8%99%91%E5%93%AA%E4%BA%9B%E9%97%AE%E9%A2%98%EF%BC%9F%E5%A6%82%E4%BD%95%E8%AE%BE%E8%AE%A1%EF%BC%9F.md)

##### [1.3.5 给定一个整数数组和一个整数,返回两个数组的索引,这两个索引指向的数字的加和等于指定的整数。需要最优的算法,分析算法的空间和时间复杂度](01.阿里篇/1.3.5%20%E7%BB%99%E5%AE%9A%E4%B8%80%E4%B8%AA%E6%95%B4%E6%95%B0%E6%95%B0%E7%BB%84%E5%92%8C%E4%B8%80%E4%B8%AA%E6%95%B4%E6%95%B0%EF%BC%8C%E8%BF%94%E5%9B%9E%E4%B8%A4%E4%B8%AA%E6%95%B0%E7%BB%84%E7%9A%84%E7%B4%A2%E5%BC%95%EF%BC%8C%E8%BF%99%E4%B8%A4%E4%B8%AA%E7%B4%A2%E5%BC%95%E6%8C%87%E5%90%91%E7%9A%84%E6%95%B0%E5%AD%97%E7%9A%84%E5%8A%A0%E5%92%8C%E7%AD%89%E4%BA%8E%E6%8C%87%E5%AE%9A%E7%9A%84%E6%95%B4%E6%95%B0%E3%80%82%E9%9C%80%E8%A6%81%E6%9C%80%E4%BC%98%E7%9A%84%E7%AE%97%E6%B3%95%EF%BC%8C%E5%88%86%E6%9E%90%E7%AE%97%E6%B3%95%E7%9A%84%E7%A9%BA%E9%97%B4%E5%92%8C%E6%97%B6%E9%97%B4%E5%A4%8D%E6%9D%82%E5%BA%A6.md)

##### [1.3.6 假如给你一个新产品,你将从哪些方面来保障它的质量?](01.阿里篇/1.3.6%20%E5%81%87%E5%A6%82%E7%BB%99%E4%BD%A0%E4%B8%80%E4%B8%AA%E6%96%B0%E4%BA%A7%E5%93%81%EF%BC%8C%E4%BD%A0%E5%B0%86%E4%BB%8E%E5%93%AA%E4%BA%9B%E6%96%B9%E9%9D%A2%E6%9D%A5%E4%BF%9D%E9%9A%9C%E5%AE%83%E7%9A%84%E8%B4%A8%E9%87%8F%EF%BC%9F.md)

##### [1.3.7 请评估一下程序的执行结果?](01.阿里篇/1.3.7%20%E8%AF%B7%E8%AF%84%E4%BC%B0%E4%B8%80%E4%B8%8B%E7%A8%8B%E5%BA%8F%E7%9A%84%E6%89%A7%E8%A1%8C%E7%BB%93%E6%9E%9C%EF%BC%9F.md)


华为篇

---
##### [2.1.0 static有什么用途?(请至少说明两种)](https://github.com/0voice/interview_internal_reference/blob/master/02.%E5%8D%8E%E4%B8%BA%E7%AF%87/2.1.1%20static%E6%9C%89%E4%BB%80%E4%B9%88%E7%94%A8%E9%80%94%EF%BC%9F%EF%BC%88%E8%AF%B7%E8%87%B3%E5%B0%91%E8%AF%B4%E6%98%8E%E4%B8%A4%E7%A7%8D%EF%BC%89.md)

##### [2.1.1 变量的声明和定义有什么区别?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#1%E5%8F%98%E9%87%8F%E7%9A%84%E5%A3%B0%E6%98%8E%E5%92%8C%E5%AE%9A%E4%B9%89%E6%9C%89%E4%BB%80%E4%B9%88%E5%8C%BA%E5%88%AB)

##### [2.1.2 sizeof 和 strlen 的区别](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#3sizeof-%E5%92%8C-strlen-%E7%9A%84%E5%8C%BA%E5%88%AB)

##### [2.1.3 C 语言的关键字 static 和 C++ 的关键字 static 有什么区别](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#4c-%E8%AF%AD%E8%A8%80%E7%9A%84%E5%85%B3%E9%94%AE%E5%AD%97-static-%E5%92%8C-c-%E7%9A%84%E5%85%B3%E9%94%AE%E5%AD%97-static-%E6%9C%89%E4%BB%80%E4%B9%88%E5%8C%BA%E5%88%AB)

##### [2.1.4 C中的 malloc 和C++中的 new 有什么区别](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#5%EF%BD%83%E4%B8%AD%E7%9A%84-malloc-%E5%92%8C%EF%BD%83%E4%B8%AD%E7%9A%84-new-%E6%9C%89%E4%BB%80%E4%B9%88%E5%8C%BA%E5%88%AB)

##### [2.1.5 写一个“标准”宏 MIN](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#6%E5%86%99%E4%B8%80%E4%B8%AA%E6%A0%87%E5%87%86%E5%AE%8F-min)

##### [2.1.6 一个指针可以是 volatile 吗](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#7%E4%B8%80%E4%B8%AA%E6%8C%87%E9%92%88%E5%8F%AF%E4%BB%A5%E6%98%AF-volatile-%E5%90%97)

##### [2.1.7 a 和&a 有什么区别](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#8a-%E5%92%8Ca-%E6%9C%89%E4%BB%80%E4%B9%88%E5%8C%BA%E5%88%AB)

##### [2.1.8 简述 C、C++程序编译的内存分配情况](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#9%E7%AE%80%E8%BF%B0-cc%E7%A8%8B%E5%BA%8F%E7%BC%96%E8%AF%91%E7%9A%84%E5%86%85%E5%AD%98%E5%88%86%E9%85%8D%E6%83%85%E5%86%B5)

##### [2.1.9 简述 strcpy、sprintf 与 memcpy 的区别](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#10%E7%AE%80%E8%BF%B0-strcpysprintf-%E4%B8%8E-memcpy-%E7%9A%84%E5%8C%BA%E5%88%AB)

##### [2.2.0 设置地址为 0x67a9 的整型变量的值为 0xaa66](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#11%E8%AE%BE%E7%BD%AE%E5%9C%B0%E5%9D%80%E4%B8%BA-0x67a9-%E7%9A%84%E6%95%B4%E5%9E%8B%E5%8F%98%E9%87%8F%E7%9A%84%E5%80%BC%E4%B8%BA-0xaa66)

##### [2.2.1 面向对象的三大特征](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#12%E9%9D%A2%E5%90%91%E5%AF%B9%E8%B1%A1%E7%9A%84%E4%B8%89%E5%A4%A7%E7%89%B9%E5%BE%81)

##### [2.2.2 C++的空类有哪些成员函数](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#13c%E7%9A%84%E7%A9%BA%E7%B1%BB%E6%9C%89%E5%93%AA%E4%BA%9B%E6%88%90%E5%91%98%E5%87%BD%E6%95%B0)

##### [2.2.3 谈谈你对拷贝构造函数和赋值运算符的认识](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#14%E8%B0%88%E8%B0%88%E4%BD%A0%E5%AF%B9%E6%8B%B7%E8%B4%9D%E6%9E%84%E9%80%A0%E5%87%BD%E6%95%B0%E5%92%8C%E8%B5%8B%E5%80%BC%E8%BF%90%E7%AE%97%E7%AC%A6%E7%9A%84%E8%AE%A4%E8%AF%86)

##### [2.2.4 用 C++设计一个不能被继承的类](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#15%E7%94%A8-c%E8%AE%BE%E8%AE%A1%E4%B8%80%E4%B8%AA%E4%B8%8D%E8%83%BD%E8%A2%AB%E7%BB%A7%E6%89%BF%E7%9A%84%E7%B1%BB)

##### [2.2.5 访问基类的私有虚函数](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#16%E8%AE%BF%E9%97%AE%E5%9F%BA%E7%B1%BB%E7%9A%84%E7%A7%81%E6%9C%89%E8%99%9A%E5%87%BD%E6%95%B0)

##### [2.2.6 简述类成员函数的重写、重载和隐藏的区别](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#17%E7%AE%80%E8%BF%B0%E7%B1%BB%E6%88%90%E5%91%98%E5%87%BD%E6%95%B0%E7%9A%84%E9%87%8D%E5%86%99%E9%87%8D%E8%BD%BD%E5%92%8C%E9%9A%90%E8%97%8F%E7%9A%84%E5%8C%BA%E5%88%AB)

##### [2.2.7 简述多态实现的原理](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#18%E7%AE%80%E8%BF%B0%E5%A4%9A%E6%80%81%E5%AE%9E%E7%8E%B0%E7%9A%84%E5%8E%9F%E7%90%86)

##### [2.2.8 链表和数组有什么区别](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#19%E9%93%BE%E8%A1%A8%E5%92%8C%E6%95%B0%E7%BB%84%E6%9C%89%E4%BB%80%E4%B9%88%E5%8C%BA%E5%88%AB)

##### [2.2.9 怎样把一个单链表反序](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#20%E6%80%8E%E6%A0%B7%E6%8A%8A%E4%B8%80%E4%B8%AA%E5%8D%95%E9%93%BE%E8%A1%A8%E5%8F%8D%E5%BA%8F)

##### [2.3.0 简述队列和栈的异同](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#21%E7%AE%80%E8%BF%B0%E9%98%9F%E5%88%97%E5%92%8C%E6%A0%88%E7%9A%84%E5%BC%82%E5%90%8C)

##### [2.3.1 能否用两个栈实现一个队列的功能](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#22%E8%83%BD%E5%90%A6%E7%94%A8%E4%B8%A4%E4%B8%AA%E6%A0%88%E5%AE%9E%E7%8E%B0%E4%B8%80%E4%B8%AA%E9%98%9F%E5%88%97%E7%9A%84%E5%8A%9F%E8%83%BD)

##### [2.3.2 计算一颗二叉树的深度](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#23%E8%AE%A1%E7%AE%97%E4%B8%80%E9%A2%97%E4%BA%8C%E5%8F%89%E6%A0%91%E7%9A%84%E6%B7%B1%E5%BA%A6)

##### [2.3.3 编码实现直接插入排序](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#24%E7%BC%96%E7%A0%81%E5%AE%9E%E7%8E%B0%E7%9B%B4%E6%8E%A5%E6%8F%92%E5%85%A5%E6%8E%92%E5%BA%8F)

##### [2.3.4 编码实现冒泡排序](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#25%E7%BC%96%E7%A0%81%E5%AE%9E%E7%8E%B0%E5%86%92%E6%B3%A1%E6%8E%92%E5%BA%8F)

##### [2.3.5 编码实现直接选择排序](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#26%E7%BC%96%E7%A0%81%E5%AE%9E%E7%8E%B0%E7%9B%B4%E6%8E%A5%E9%80%89%E6%8B%A9%E6%8E%92%E5%BA%8F)

##### [2.3.6 编程实现堆排序](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#27%E7%BC%96%E7%A8%8B%E5%AE%9E%E7%8E%B0%E5%A0%86%E6%8E%92%E5%BA%8F)

##### [2.3.7 编程实现基数排序](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#28%E7%BC%96%E7%A8%8B%E5%AE%9E%E7%8E%B0%E5%9F%BA%E6%95%B0%E6%8E%92%E5%BA%8F)

##### [2.3.8 谈谈你对编程规范的理解或认识](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#29%E8%B0%88%E8%B0%88%E4%BD%A0%E5%AF%B9%E7%BC%96%E7%A8%8B%E8%A7%84%E8%8C%83%E7%9A%84%E7%90%86%E8%A7%A3%E6%88%96%E8%AE%A4%E8%AF%86)

##### [2.3.9 short i = 0; i = i + 1L;这两句有错吗](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#30short-i--0-i--i--1l%E8%BF%99%E4%B8%A4%E5%8F%A5%E6%9C%89%E9%94%99%E5%90%97)

##### [2.4.0 &&和&、||和|有什么区别](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#31%E5%92%8C%E5%92%8C%E6%9C%89%E4%BB%80%E4%B9%88%E5%8C%BA%E5%88%AB)

##### [2.4.1 C++的引用和 C 语言的指针有什么区别](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#32c%E7%9A%84%E5%BC%95%E7%94%A8%E5%92%8C-c-%E8%AF%AD%E8%A8%80%E7%9A%84%E6%8C%87%E9%92%88%E6%9C%89%E4%BB%80%E4%B9%88%E5%8C%BA%E5%88%AB)

##### [2.4.2 在二元树中找出和为某一值的所有路径](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#33%E5%9C%A8%E4%BA%8C%E5%85%83%E6%A0%91%E4%B8%AD%E6%89%BE%E5%87%BA%E5%92%8C%E4%B8%BA%E6%9F%90%E4%B8%80%E5%80%BC%E7%9A%84%E6%89%80%E6%9C%89%E8%B7%AF%E5%BE%84)

##### [2.4.3 typedef 和 define 有什么区别](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#35typedef-%E5%92%8C-define-%E6%9C%89%E4%BB%80%E4%B9%88%E5%8C%BA%E5%88%AB)

##### [2.4.4 关键字 const 是什么](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#36%E5%85%B3%E9%94%AE%E5%AD%97-const-%E6%98%AF%E4%BB%80%E4%B9%88)

##### [2.4.5 static 有什么作用](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#37static-%E6%9C%89%E4%BB%80%E4%B9%88%E4%BD%9C%E7%94%A8)

##### [2.4.6 extern 有什么作用](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#38extern-%E6%9C%89%E4%BB%80%E4%B9%88%E4%BD%9C%E7%94%A8)

##### [2.4.7 流操作符重载为什么返回引用](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#39%E6%B5%81%E6%93%8D%E4%BD%9C%E7%AC%A6%E9%87%8D%E8%BD%BD%E4%B8%BA%E4%BB%80%E4%B9%88%E8%BF%94%E5%9B%9E%E5%BC%95%E7%94%A8)

##### [2.4.8 简述指针常量与常量指针区别](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#40%E7%AE%80%E8%BF%B0%E6%8C%87%E9%92%88%E5%B8%B8%E9%87%8F%E4%B8%8E%E5%B8%B8%E9%87%8F%E6%8C%87%E9%92%88%E5%8C%BA%E5%88%AB)

##### [2.4.9 数组名和指针的区别](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#41%E6%95%B0%E7%BB%84%E5%90%8D%E5%92%8C%E6%8C%87%E9%92%88%E7%9A%84%E5%8C%BA%E5%88%AB)

##### [2.5.0 如何避免“野指针”](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#42%E5%A6%82%E4%BD%95%E9%81%BF%E5%85%8D%E9%87%8E%E6%8C%87%E9%92%88)

##### [2.5.1 常引用有什么作用](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#43%E5%B8%B8%E5%BC%95%E7%94%A8%E6%9C%89%E4%BB%80%E4%B9%88%E4%BD%9C%E7%94%A8)

##### [2.5.2 编码实现字符串转化为数字](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#44%E7%BC%96%E7%A0%81%E5%AE%9E%E7%8E%B0%E5%AD%97%E7%AC%A6%E4%B8%B2%E8%BD%AC%E5%8C%96%E4%B8%BA%E6%95%B0%E5%AD%97)

##### [2.5.3 简述 strcpy、sprintf 与 memcpy 的区别](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#45%E7%AE%80%E8%BF%B0-strcpysprintf-%E4%B8%8E-memcpy-%E7%9A%84%E5%8C%BA%E5%88%AB)

##### [2.5.4 用 C 编写一个死循环程序](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#46%E7%94%A8-c-%E7%BC%96%E5%86%99%E4%B8%80%E4%B8%AA%E6%AD%BB%E5%BE%AA%E7%8E%AF%E7%A8%8B%E5%BA%8F)

##### [2.5.5 编码实现某一变量某位清 0 或置 1](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#47%E7%BC%96%E7%A0%81%E5%AE%9E%E7%8E%B0%E6%9F%90%E4%B8%80%E5%8F%98%E9%87%8F%E6%9F%90%E4%BD%8D%E6%B8%85-0-%E6%88%96%E7%BD%AE-1)

##### [2.5.6 评论下面这个中断函数](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#48%E8%AF%84%E8%AE%BA%E4%B8%8B%E9%9D%A2%E8%BF%99%E4%B8%AA%E4%B8%AD%E6%96%AD%E5%87%BD%E6%95%B0)

##### [2.5.7 构造函数能否为虚函数](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#49%E6%9E%84%E9%80%A0%E5%87%BD%E6%95%B0%E8%83%BD%E5%90%A6%E4%B8%BA%E8%99%9A%E5%87%BD%E6%95%B0)

##### [2.5.8 谈谈你对面向对象的认识](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#50%E8%B0%88%E8%B0%88%E4%BD%A0%E5%AF%B9%E9%9D%A2%E5%90%91%E5%AF%B9%E8%B1%A1%E7%9A%84%E8%AE%A4%E8%AF%86)

##### [2.5.9 动态库和静态库的区别](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#67%E5%8A%A8%E6%80%81%E5%BA%93%E5%92%8C%E9%9D%99%E6%80%81%E5%BA%93%E7%9A%84%E5%8C%BA%E5%88%AB)


百度篇

---

##### [3.1.0 提高c++性能,你用过哪些方式去提升](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#68%E6%8F%90%E9%AB%98c%E6%80%A7%E8%83%BD%E4%BD%A0%E7%94%A8%E8%BF%87%E5%93%AA%E4%BA%9B%E6%96%B9%E5%BC%8F%E5%8E%BB%E6%8F%90%E5%8D%87)

##### [3.1.1 引用和指针的区别?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#74%E5%BC%95%E7%94%A8%E5%92%8C%E6%8C%87%E9%92%88%E7%9A%84%E5%8C%BA%E5%88%AB)

##### [3.1.2 从汇编层去解释一下引用](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#75%E4%BB%8E%E6%B1%87%E7%BC%96%E5%B1%82%E5%8E%BB%E8%A7%A3%E9%87%8A%E4%B8%80%E4%B8%8B%E5%BC%95%E7%94%A8)

##### [3.1.3 C++中的指针参数传递和引用参数传递](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#76c%E4%B8%AD%E7%9A%84%E6%8C%87%E9%92%88%E5%8F%82%E6%95%B0%E4%BC%A0%E9%80%92%E5%92%8C%E5%BC%95%E7%94%A8%E5%8F%82%E6%95%B0%E4%BC%A0%E9%80%92)

##### [3.1.4 形参与实参的区别?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#77%E5%BD%A2%E5%8F%82%E4%B8%8E%E5%AE%9E%E5%8F%82%E7%9A%84%E5%8C%BA%E5%88%AB)

##### [3.1.5 static的用法和作用?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#78static%E7%9A%84%E7%94%A8%E6%B3%95%E5%92%8C%E4%BD%9C%E7%94%A8)

##### [3.1.6 静态变量什么时候初始化](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#79%E9%9D%99%E6%80%81%E5%8F%98%E9%87%8F%E4%BB%80%E4%B9%88%E6%97%B6%E5%80%99%E5%88%9D%E5%A7%8B%E5%8C%96)

##### [3.1.7 const?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#80const)

##### [3.1.8 const成员函数的理解和应用?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#81const%E6%88%90%E5%91%98%E5%87%BD%E6%95%B0%E7%9A%84%E7%90%86%E8%A7%A3%E5%92%8C%E5%BA%94%E7%94%A8)

##### [3.1.9 指针和const的用法](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#82%E6%8C%87%E9%92%88%E5%92%8Cconst%E7%9A%84%E7%94%A8%E6%B3%95)

##### [3.2.0 mutable](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#83mutable)

##### [3.2.1 extern用法?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#84extern%E7%94%A8%E6%B3%95)

##### [3.2.2 int转字符串字符串转int?strcat,strcpy,strncpy,memset,memcpy的内部实现?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#85int%E8%BD%AC%E5%AD%97%E7%AC%A6%E4%B8%B2%E5%AD%97%E7%AC%A6%E4%B8%B2%E8%BD%ACintstrcatstrcpystrncpymemsetmemcpy%E7%9A%84%E5%86%85%E9%83%A8%E5%AE%9E%E7%8E%B0)

##### [3.2.3 深拷贝与浅拷贝?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#86%E6%B7%B1%E6%8B%B7%E8%B4%9D%E4%B8%8E%E6%B5%85%E6%8B%B7%E8%B4%9D)

##### [3.2.4 C++模板是什么,底层怎么实现的?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#87c%E6%A8%A1%E6%9D%BF%E6%98%AF%E4%BB%80%E4%B9%88%E5%BA%95%E5%B1%82%E6%80%8E%E4%B9%88%E5%AE%9E%E7%8E%B0%E7%9A%84)

##### [3.2.5 C语言struct和C++struct区别](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#88c%E8%AF%AD%E8%A8%80struct%E5%92%8Ccstruct%E5%8C%BA%E5%88%AB)

##### [3.2.6 虚函数可以声明为inline吗?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#89%E8%99%9A%E5%87%BD%E6%95%B0%E5%8F%AF%E4%BB%A5%E5%A3%B0%E6%98%8E%E4%B8%BAinline%E5%90%97)

##### [3.2.7 类成员初始化方式?构造函数的执行顺序 ?为什么用成员初始化列表会快一些?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#90%E7%B1%BB%E6%88%90%E5%91%98%E5%88%9D%E5%A7%8B%E5%8C%96%E6%96%B9%E5%BC%8F%E6%9E%84%E9%80%A0%E5%87%BD%E6%95%B0%E7%9A%84%E6%89%A7%E8%A1%8C%E9%A1%BA%E5%BA%8F-%E4%B8%BA%E4%BB%80%E4%B9%88%E7%94%A8%E6%88%90%E5%91%98%E5%88%9D%E5%A7%8B%E5%8C%96%E5%88%97%E8%A1%A8%E4%BC%9A%E5%BF%AB%E4%B8%80%E4%BA%9B)

##### [3.2.8 成员列表初始化?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#91%E6%88%90%E5%91%98%E5%88%97%E8%A1%A8%E5%88%9D%E5%A7%8B%E5%8C%96)

##### [3.2.9 构造函数为什么不能为虚函数?析构函数为什么要虚函数?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#92%E6%9E%84%E9%80%A0%E5%87%BD%E6%95%B0%E4%B8%BA%E4%BB%80%E4%B9%88%E4%B8%8D%E8%83%BD%E4%B8%BA%E8%99%9A%E5%87%BD%E6%95%B0%E6%9E%90%E6%9E%84%E5%87%BD%E6%95%B0%E4%B8%BA%E4%BB%80%E4%B9%88%E8%A6%81%E8%99%9A%E5%87%BD%E6%95%B0)

##### [3.3.0 析构函数的作用,如何起作用?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#93%E6%9E%90%E6%9E%84%E5%87%BD%E6%95%B0%E7%9A%84%E4%BD%9C%E7%94%A8%E5%A6%82%E4%BD%95%E8%B5%B7%E4%BD%9C%E7%94%A8)

##### [3.3.1 构造函数和析构函数可以调用虚函数吗,为什么?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#94%E6%9E%84%E9%80%A0%E5%87%BD%E6%95%B0%E5%92%8C%E6%9E%90%E6%9E%84%E5%87%BD%E6%95%B0%E5%8F%AF%E4%BB%A5%E8%B0%83%E7%94%A8%E8%99%9A%E5%87%BD%E6%95%B0%E5%90%97%E4%B8%BA%E4%BB%80%E4%B9%88)

##### [3.3.2 构造函数的执行顺序?析构函数的执行顺序?构造函数内部干了啥?拷贝构造干了啥?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#95%E6%9E%84%E9%80%A0%E5%87%BD%E6%95%B0%E7%9A%84%E6%89%A7%E8%A1%8C%E9%A1%BA%E5%BA%8F%E6%9E%90%E6%9E%84%E5%87%BD%E6%95%B0%E7%9A%84%E6%89%A7%E8%A1%8C%E9%A1%BA%E5%BA%8F%E6%9E%84%E9%80%A0%E5%87%BD%E6%95%B0%E5%86%85%E9%83%A8%E5%B9%B2%E4%BA%86%E5%95%A5%E6%8B%B7%E8%B4%9D%E6%9E%84%E9%80%A0%E5%B9%B2%E4%BA%86%E5%95%A5)

##### [3.3.3 虚析构函数的作用,父类的析构函数是否要设置为虚函数?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#96%E8%99%9A%E6%9E%90%E6%9E%84%E5%87%BD%E6%95%B0%E7%9A%84%E4%BD%9C%E7%94%A8%E7%88%B6%E7%B1%BB%E7%9A%84%E6%9E%90%E6%9E%84%E5%87%BD%E6%95%B0%E6%98%AF%E5%90%A6%E8%A6%81%E8%AE%BE%E7%BD%AE%E4%B8%BA%E8%99%9A%E5%87%BD%E6%95%B0)

##### [3.3.4 构造函数析构函数可否抛出异常](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#97%E6%9E%84%E9%80%A0%E5%87%BD%E6%95%B0%E6%9E%90%E6%9E%84%E5%87%BD%E6%95%B0%E5%8F%AF%E5%90%A6%E6%8A%9B%E5%87%BA%E5%BC%82%E5%B8%B8)

##### [3.3.5 类如何实现只能静态分配和只能动态分配](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#98%E7%B1%BB%E5%A6%82%E4%BD%95%E5%AE%9E%E7%8E%B0%E5%8F%AA%E8%83%BD%E9%9D%99%E6%80%81%E5%88%86%E9%85%8D%E5%92%8C%E5%8F%AA%E8%83%BD%E5%8A%A8%E6%80%81%E5%88%86%E9%85%8D)

##### [3.3.6 如果想将某个类用作基类,为什么该类必须定义而非声明?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#99%E5%A6%82%E6%9E%9C%E6%83%B3%E5%B0%86%E6%9F%90%E4%B8%AA%E7%B1%BB%E7%94%A8%E4%BD%9C%E5%9F%BA%E7%B1%BB%E4%B8%BA%E4%BB%80%E4%B9%88%E8%AF%A5%E7%B1%BB%E5%BF%85%E9%A1%BB%E5%AE%9A%E4%B9%89%E8%80%8C%E9%9D%9E%E5%A3%B0%E6%98%8E)

##### [3.3.7 什么情况会自动生成默认构造函数?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#100%E4%BB%80%E4%B9%88%E6%83%85%E5%86%B5%E4%BC%9A%E8%87%AA%E5%8A%A8%E7%94%9F%E6%88%90%E9%BB%98%E8%AE%A4%E6%9E%84%E9%80%A0%E5%87%BD%E6%95%B0)

##### [3.3.8 什么是类的继承?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#101%E4%BB%80%E4%B9%88%E6%98%AF%E7%B1%BB%E7%9A%84%E7%BB%A7%E6%89%BF)

##### [3.3.9 什么是组合?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#102%E4%BB%80%E4%B9%88%E6%98%AF%E7%BB%84%E5%90%88)

##### [3.4.0 抽象基类为什么不能创建对象?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#103%E6%8A%BD%E8%B1%A1%E5%9F%BA%E7%B1%BB%E4%B8%BA%E4%BB%80%E4%B9%88%E4%B8%8D%E8%83%BD%E5%88%9B%E5%BB%BA%E5%AF%B9%E8%B1%A1)

##### [3.4.1 类什么时候会析构?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#104%E7%B1%BB%E4%BB%80%E4%B9%88%E6%97%B6%E5%80%99%E4%BC%9A%E6%9E%90%E6%9E%84)

##### [3.4.2 为什么友元函数必须在类内部声明?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#105%E4%B8%BA%E4%BB%80%E4%B9%88%E5%8F%8B%E5%85%83%E5%87%BD%E6%95%B0%E5%BF%85%E9%A1%BB%E5%9C%A8%E7%B1%BB%E5%86%85%E9%83%A8%E5%A3%B0%E6%98%8E)

##### [3.4.3 介绍一下C++里面的多态?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#106%E4%BB%8B%E7%BB%8D%E4%B8%80%E4%B8%8Bc%E9%87%8C%E9%9D%A2%E7%9A%84%E5%A4%9A%E6%80%81)

##### [3.4.4 用C语言实现C++的继承](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#107%E7%94%A8c%E8%AF%AD%E8%A8%80%E5%AE%9E%E7%8E%B0c%E7%9A%84%E7%BB%A7%E6%89%BF)

##### [3.4.5 继承机制中对象之间如何转换?指针和引用之间如何转换?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#108%E7%BB%A7%E6%89%BF%E6%9C%BA%E5%88%B6%E4%B8%AD%E5%AF%B9%E8%B1%A1%E4%B9%8B%E9%97%B4%E5%A6%82%E4%BD%95%E8%BD%AC%E6%8D%A2%E6%8C%87%E9%92%88%E5%92%8C%E5%BC%95%E7%94%A8%E4%B9%8B%E9%97%B4%E5%A6%82%E4%BD%95%E8%BD%AC%E6%8D%A2)

##### [3.4.6 组合与继承优缺点?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#109%E7%BB%84%E5%90%88%E4%B8%8E%E7%BB%A7%E6%89%BF%E4%BC%98%E7%BC%BA%E7%82%B9)

##### [3.4.7 左值右值](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#110%E5%B7%A6%E5%80%BC%E5%8F%B3%E5%80%BC)

##### [3.4.8 移动构造函数](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#111%E7%A7%BB%E5%8A%A8%E6%9E%84%E9%80%A0%E5%87%BD%E6%95%B0)

##### [3.4.9 C语言的编译链接过程?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#112c%E8%AF%AD%E8%A8%80%E7%9A%84%E7%BC%96%E8%AF%91%E9%93%BE%E6%8E%A5%E8%BF%87%E7%A8%8B)

##### [3.5.0 vector与list的区别与应用?怎么找某vector或者list的倒数第二个元素](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#113vector%E4%B8%8Elist%E7%9A%84%E5%8C%BA%E5%88%AB%E4%B8%8E%E5%BA%94%E7%94%A8%E6%80%8E%E4%B9%88%E6%89%BE%E6%9F%90vector%E6%88%96%E8%80%85list%E7%9A%84%E5%80%92%E6%95%B0%E7%AC%AC%E4%BA%8C%E4%B8%AA%E5%85%83%E7%B4%A0)

##### [3.5.1 STL vector的实现,删除其中的元素,迭代器如何变化?为什么是两倍扩容?释放空间?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#114stl-vector%E7%9A%84%E5%AE%9E%E7%8E%B0%E5%88%A0%E9%99%A4%E5%85%B6%E4%B8%AD%E7%9A%84%E5%85%83%E7%B4%A0%E8%BF%AD%E4%BB%A3%E5%99%A8%E5%A6%82%E4%BD%95%E5%8F%98%E5%8C%96%E4%B8%BA%E4%BB%80%E4%B9%88%E6%98%AF%E4%B8%A4%E5%80%8D%E6%89%A9%E5%AE%B9%E9%87%8A%E6%94%BE%E7%A9%BA%E9%97%B4)

##### [3.5.2 容器内部删除一个元素](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#115%E5%AE%B9%E5%99%A8%E5%86%85%E9%83%A8%E5%88%A0%E9%99%A4%E4%B8%80%E4%B8%AA%E5%85%83%E7%B4%A0)

##### [3.5.3 STL迭代器如何实现](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#116stl%E8%BF%AD%E4%BB%A3%E5%99%A8%E5%A6%82%E4%BD%95%E5%AE%9E%E7%8E%B0)

##### [3.5.4 set与hash_set的区别](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#117set%E4%B8%8Ehash_set%E7%9A%84%E5%8C%BA%E5%88%AB)

##### [3.5.5 hashmap与map的区别](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#118hashmap%E4%B8%8Emap%E7%9A%84%E5%8C%BA%E5%88%AB)

##### [3.5.6 map、set是怎么实现的,红黑树是怎么能够同时实现这两种容器? 为什么使用红黑树?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#119mapset%E6%98%AF%E6%80%8E%E4%B9%88%E5%AE%9E%E7%8E%B0%E7%9A%84%E7%BA%A2%E9%BB%91%E6%A0%91%E6%98%AF%E6%80%8E%E4%B9%88%E8%83%BD%E5%A4%9F%E5%90%8C%E6%97%B6%E5%AE%9E%E7%8E%B0%E8%BF%99%E4%B8%A4%E7%A7%8D%E5%AE%B9%E5%99%A8-%E4%B8%BA%E4%BB%80%E4%B9%88%E4%BD%BF%E7%94%A8%E7%BA%A2%E9%BB%91%E6%A0%91)

##### [3.5.7 如何在共享内存上使用stl标准库?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#120%E5%A6%82%E4%BD%95%E5%9C%A8%E5%85%B1%E4%BA%AB%E5%86%85%E5%AD%98%E4%B8%8A%E4%BD%BF%E7%94%A8stl%E6%A0%87%E5%87%86%E5%BA%93)


腾讯篇

---

##### [4.1.0 map插入方式有几种?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#121map%E6%8F%92%E5%85%A5%E6%96%B9%E5%BC%8F%E6%9C%89%E5%87%A0%E7%A7%8D)

##### [4.1.1 STL中unordered_map(hash_map)和map的区别,hash_map如何解决冲突以及扩容](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#122stl%E4%B8%ADunordered_maphash_map%E5%92%8Cmap%E7%9A%84%E5%8C%BA%E5%88%ABhash_map%E5%A6%82%E4%BD%95%E8%A7%A3%E5%86%B3%E5%86%B2%E7%AA%81%E4%BB%A5%E5%8F%8A%E6%89%A9%E5%AE%B9)

##### [4.1.2 vector越界访问下标,map越界访问下标?vector删除元素时会不会释放空间?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#123vector%E8%B6%8A%E7%95%8C%E8%AE%BF%E9%97%AE%E4%B8%8B%E6%A0%87map%E8%B6%8A%E7%95%8C%E8%AE%BF%E9%97%AE%E4%B8%8B%E6%A0%87vector%E5%88%A0%E9%99%A4%E5%85%83%E7%B4%A0%E6%97%B6%E4%BC%9A%E4%B8%8D%E4%BC%9A%E9%87%8A%E6%94%BE%E7%A9%BA%E9%97%B4)

##### [4.1.3 map[]与find的区别?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#124map%E4%B8%8Efind%E7%9A%84%E5%8C%BA%E5%88%AB)

##### [4.1.4 STL中list与queue之间的区别](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#125stl%E4%B8%ADlist%E4%B8%8Equeue%E4%B9%8B%E9%97%B4%E7%9A%84%E5%8C%BA%E5%88%AB)

##### [4.1.5 STL中的allocator,deallocator](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#126stl%E4%B8%AD%E7%9A%84allocatordeallocator)

##### [4.1.6 STL中hash_map扩容发生什么?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#127stl%E4%B8%ADhash_map%E6%89%A9%E5%AE%B9%E5%8F%91%E7%94%9F%E4%BB%80%E4%B9%88)

##### [4.1.7 map如何创建?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#128map%E5%A6%82%E4%BD%95%E5%88%9B%E5%BB%BA)

##### [4.1.8 vector的增加删除都是怎么做的?为什么是1.5倍?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#129vector%E7%9A%84%E5%A2%9E%E5%8A%A0%E5%88%A0%E9%99%A4%E9%83%BD%E6%98%AF%E6%80%8E%E4%B9%88%E5%81%9A%E7%9A%84%E4%B8%BA%E4%BB%80%E4%B9%88%E6%98%AF15%E5%80%8D)

##### [4.1.9 函数指针?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#130%E5%87%BD%E6%95%B0%E6%8C%87%E9%92%88)

##### [4.2.0 说说你对c和c++的看法,c和c++的区别?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#131%E8%AF%B4%E8%AF%B4%E4%BD%A0%E5%AF%B9c%E5%92%8Cc%E7%9A%84%E7%9C%8B%E6%B3%95c%E5%92%8Cc%E7%9A%84%E5%8C%BA%E5%88%AB)

##### [4.2.1 c/c++的内存分配,详细说一下栈、堆、静态存储区?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#132cc%E7%9A%84%E5%86%85%E5%AD%98%E5%88%86%E9%85%8D%E8%AF%A6%E7%BB%86%E8%AF%B4%E4%B8%80%E4%B8%8B%E6%A0%88%E5%A0%86%E9%9D%99%E6%80%81%E5%AD%98%E5%82%A8%E5%8C%BA)

##### [4.2.2 堆与栈的区别?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#133%E5%A0%86%E4%B8%8E%E6%A0%88%E7%9A%84%E5%8C%BA%E5%88%AB)

##### [4.2.3 野指针是什么?如何检测内存泄漏?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#134%E9%87%8E%E6%8C%87%E9%92%88%E6%98%AF%E4%BB%80%E4%B9%88%E5%A6%82%E4%BD%95%E6%A3%80%E6%B5%8B%E5%86%85%E5%AD%98%E6%B3%84%E6%BC%8F)

##### [4.2.4 悬空指针和野指针有什么区别?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#135%E6%82%AC%E7%A9%BA%E6%8C%87%E9%92%88%E5%92%8C%E9%87%8E%E6%8C%87%E9%92%88%E6%9C%89%E4%BB%80%E4%B9%88%E5%8C%BA%E5%88%AB)

##### [4.2.5 内存泄漏](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#136%E5%86%85%E5%AD%98%E6%B3%84%E6%BC%8F)

##### [4.2.6 new和malloc的区别?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#137new%E5%92%8Cmalloc%E7%9A%84%E5%8C%BA%E5%88%AB)

##### [4.2.7 delete p;与delete[]p,allocator](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#138delete-p%E4%B8%8Edeletepallocator)

##### [4.2.8 new和delete的实现原理, delete是如何知道释放内存的大小的额?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#139new%E5%92%8Cdelete%E7%9A%84%E5%AE%9E%E7%8E%B0%E5%8E%9F%E7%90%86-delete%E6%98%AF%E5%A6%82%E4%BD%95%E7%9F%A5%E9%81%93%E9%87%8A%E6%94%BE%E5%86%85%E5%AD%98%E7%9A%84%E5%A4%A7%E5%B0%8F%E7%9A%84%E9%A2%9D)

##### [4.2.9 malloc申请的存储空间能用delete释放吗](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#140malloc%E7%94%B3%E8%AF%B7%E7%9A%84%E5%AD%98%E5%82%A8%E7%A9%BA%E9%97%B4%E8%83%BD%E7%94%A8delete%E9%87%8A%E6%94%BE%E5%90%97)

##### [4.3.0 malloc与free的实现原理?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#141malloc%E4%B8%8Efree%E7%9A%84%E5%AE%9E%E7%8E%B0%E5%8E%9F%E7%90%86)

##### [4.3.1 malloc、realloc、calloc的区别](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#142mallocrealloccalloc%E7%9A%84%E5%8C%BA%E5%88%AB)

##### [4.3.2 __stdcall和__cdecl的区别?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#143__stdcall%E5%92%8C__cdecl%E7%9A%84%E5%8C%BA%E5%88%AB)

##### [4.3.3 使用智能指针管理内存资源,RAII](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#144%E4%BD%BF%E7%94%A8%E6%99%BA%E8%83%BD%E6%8C%87%E9%92%88%E7%AE%A1%E7%90%86%E5%86%85%E5%AD%98%E8%B5%84%E6%BA%90raii)

##### [4.3.4 手写实现智能指针类](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#145%E6%89%8B%E5%86%99%E5%AE%9E%E7%8E%B0%E6%99%BA%E8%83%BD%E6%8C%87%E9%92%88%E7%B1%BB)

##### [4.3.5 内存对齐?位域?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#146%E5%86%85%E5%AD%98%E5%AF%B9%E9%BD%90%E4%BD%8D%E5%9F%9F)

##### [4.3.6 结构体变量比较是否相等](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#147%E7%BB%93%E6%9E%84%E4%BD%93%E5%8F%98%E9%87%8F%E6%AF%94%E8%BE%83%E6%98%AF%E5%90%A6%E7%9B%B8%E7%AD%89)

##### [4.3.7 位运算](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#148%E4%BD%8D%E8%BF%90%E7%AE%97)

##### [4.3.8 为什么内存对齐](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#149%E4%B8%BA%E4%BB%80%E4%B9%88%E5%86%85%E5%AD%98%E5%AF%B9%E9%BD%90)

##### [4.3.9 函数调用过程栈的变化,返回值和参数变量哪个先入栈?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#150%E5%87%BD%E6%95%B0%E8%B0%83%E7%94%A8%E8%BF%87%E7%A8%8B%E6%A0%88%E7%9A%84%E5%8F%98%E5%8C%96%E8%BF%94%E5%9B%9E%E5%80%BC%E5%92%8C%E5%8F%82%E6%95%B0%E5%8F%98%E9%87%8F%E5%93%AA%E4%B8%AA%E5%85%88%E5%85%A5%E6%A0%88)

##### [4.4.0 怎样判断两个浮点数是否相等?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#151%E6%80%8E%E6%A0%B7%E5%88%A4%E6%96%AD%E4%B8%A4%E4%B8%AA%E6%B5%AE%E7%82%B9%E6%95%B0%E6%98%AF%E5%90%A6%E7%9B%B8%E7%AD%89)

##### [4.4.1 宏定义一个取两个数中较大值的功能](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#152%E5%AE%8F%E5%AE%9A%E4%B9%89%E4%B8%80%E4%B8%AA%E5%8F%96%E4%B8%A4%E4%B8%AA%E6%95%B0%E4%B8%AD%E8%BE%83%E5%A4%A7%E5%80%BC%E7%9A%84%E5%8A%9F%E8%83%BD)

##### [4.4.2 define、const、typedef、inline使用方法?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#153defineconsttypedefinline%E4%BD%BF%E7%94%A8%E6%96%B9%E6%B3%95)

##### [4.4.3 printf实现原理?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#154printf%E5%AE%9E%E7%8E%B0%E5%8E%9F%E7%90%86)

##### [4.4.4 #include 的顺序以及尖叫括号和双引号的区别](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#155include-%E7%9A%84%E9%A1%BA%E5%BA%8F%E4%BB%A5%E5%8F%8A%E5%B0%96%E5%8F%AB%E6%8B%AC%E5%8F%B7%E5%92%8C%E5%8F%8C%E5%BC%95%E5%8F%B7%E7%9A%84%E5%8C%BA%E5%88%AB)

##### [4.4.5 lambda函数](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#156lambda%E5%87%BD%E6%95%B0)

##### [4.4.6 hello world 程序开始到打印到屏幕上的全过程?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#157hello-world-%E7%A8%8B%E5%BA%8F%E5%BC%80%E5%A7%8B%E5%88%B0%E6%89%93%E5%8D%B0%E5%88%B0%E5%B1%8F%E5%B9%95%E4%B8%8A%E7%9A%84%E5%85%A8%E8%BF%87%E7%A8%8B)

##### [4.4.7 模板类和模板函数的区别是什么?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#158%E6%A8%A1%E6%9D%BF%E7%B1%BB%E5%92%8C%E6%A8%A1%E6%9D%BF%E5%87%BD%E6%95%B0%E7%9A%84%E5%8C%BA%E5%88%AB%E6%98%AF%E4%BB%80%E4%B9%88)

##### [4.4.8 为什么模板类一般都是放在一个h文件中](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#159%E4%B8%BA%E4%BB%80%E4%B9%88%E6%A8%A1%E6%9D%BF%E7%B1%BB%E4%B8%80%E8%88%AC%E9%83%BD%E6%98%AF%E6%94%BE%E5%9C%A8%E4%B8%80%E4%B8%AAh%E6%96%87%E4%BB%B6%E4%B8%AD)

##### [4.4.9 C++中类成员的访问权限和继承权限问题。](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#160c%E4%B8%AD%E7%B1%BB%E6%88%90%E5%91%98%E7%9A%84%E8%AE%BF%E9%97%AE%E6%9D%83%E9%99%90%E5%92%8C%E7%BB%A7%E6%89%BF%E6%9D%83%E9%99%90%E9%97%AE%E9%A2%98)

##### [4.5.0 cout和printf有什么区别?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#161cout%E5%92%8Cprintf%E6%9C%89%E4%BB%80%E4%B9%88%E5%8C%BA%E5%88%AB)

##### [4.5.1 重载运算符?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#162%E9%87%8D%E8%BD%BD%E8%BF%90%E7%AE%97%E7%AC%A6)

##### [4.5.2 函数重载函数匹配原则](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#163%E5%87%BD%E6%95%B0%E9%87%8D%E8%BD%BD%E5%87%BD%E6%95%B0%E5%8C%B9%E9%85%8D%E5%8E%9F%E5%88%99)

##### [4.5.3 定义和声明的区别](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#164%E5%AE%9A%E4%B9%89%E5%92%8C%E5%A3%B0%E6%98%8E%E7%9A%84%E5%8C%BA%E5%88%AB)

##### [4.5.4 C++类型转换有四种](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#165c%E7%B1%BB%E5%9E%8B%E8%BD%AC%E6%8D%A2%E6%9C%89%E5%9B%9B%E7%A7%8D)

##### [4.5.5 全局变量和static变量的区别](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#166%E5%85%A8%E5%B1%80%E5%8F%98%E9%87%8F%E5%92%8Cstatic%E5%8F%98%E9%87%8F%E7%9A%84%E5%8C%BA%E5%88%AB)

##### [4.5.6 静态成员与普通成员的区别](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#167%E9%9D%99%E6%80%81%E6%88%90%E5%91%98%E4%B8%8E%E6%99%AE%E9%80%9A%E6%88%90%E5%91%98%E7%9A%84%E5%8C%BA%E5%88%AB)

##### [4.5.7 说一下理解 ifdef endif](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#168%E8%AF%B4%E4%B8%80%E4%B8%8B%E7%90%86%E8%A7%A3-ifdef-endif)

##### [4.5.8 隐式转换,如何消除隐式转换?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#169%E9%9A%90%E5%BC%8F%E8%BD%AC%E6%8D%A2%E5%A6%82%E4%BD%95%E6%B6%88%E9%99%A4%E9%9A%90%E5%BC%8F%E8%BD%AC%E6%8D%A2)

##### [4.5.9 多继承的优缺点,作为一个开发者怎么看待多继承](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#171%E5%A4%9A%E7%BB%A7%E6%89%BF%E7%9A%84%E4%BC%98%E7%BC%BA%E7%82%B9%E4%BD%9C%E4%B8%BA%E4%B8%80%E4%B8%AA%E5%BC%80%E5%8F%91%E8%80%85%E6%80%8E%E4%B9%88%E7%9C%8B%E5%BE%85%E5%A4%9A%E7%BB%A7%E6%89%BF)

##### [4.6.0 迭代器++it,it++哪个好,为什么](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#172%E8%BF%AD%E4%BB%A3%E5%99%A8itit%E5%93%AA%E4%B8%AA%E5%A5%BD%E4%B8%BA%E4%BB%80%E4%B9%88)

##### [4.6.1 模板和实现可不可以不写在一个文件里面?为什么?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#173%E6%A8%A1%E6%9D%BF%E5%92%8C%E5%AE%9E%E7%8E%B0%E5%8F%AF%E4%B8%8D%E5%8F%AF%E4%BB%A5%E4%B8%8D%E5%86%99%E5%9C%A8%E4%B8%80%E4%B8%AA%E6%96%87%E4%BB%B6%E9%87%8C%E9%9D%A2%E4%B8%BA%E4%BB%80%E4%B9%88)

##### [4.6.2 在成员函数中调用delete this会出现什么问题?对象还可以使用吗?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#174%E5%9C%A8%E6%88%90%E5%91%98%E5%87%BD%E6%95%B0%E4%B8%AD%E8%B0%83%E7%94%A8delete-this%E4%BC%9A%E5%87%BA%E7%8E%B0%E4%BB%80%E4%B9%88%E9%97%AE%E9%A2%98%E5%AF%B9%E8%B1%A1%E8%BF%98%E5%8F%AF%E4%BB%A5%E4%BD%BF%E7%94%A8%E5%90%97)

##### [4.6.3 智能指针的作用](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#175%E6%99%BA%E8%83%BD%E6%8C%87%E9%92%88%E7%9A%84%E4%BD%9C%E7%94%A8)

##### [4.6.4 auto_ptr作用](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#176auto_ptr%E4%BD%9C%E7%94%A8)

##### [4.6.5 class、union、struct的区别](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#177classunionstruct%E7%9A%84%E5%8C%BA%E5%88%AB)

##### [4.6.6 动态联编与静态联编](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#178%E5%8A%A8%E6%80%81%E8%81%94%E7%BC%96%E4%B8%8E%E9%9D%99%E6%80%81%E8%81%94%E7%BC%96)

##### [4.6.7 动态编译与静态编译](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#179%E5%8A%A8%E6%80%81%E7%BC%96%E8%AF%91%E4%B8%8E%E9%9D%99%E6%80%81%E7%BC%96%E8%AF%91)

##### [4.6.8 动态链接和静态链接区别](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#180%E5%8A%A8%E6%80%81%E9%93%BE%E6%8E%A5%E5%92%8C%E9%9D%99%E6%80%81%E9%93%BE%E6%8E%A5%E5%8C%BA%E5%88%AB)

##### [4.6.9 在不使用额外空间的情况下,交换两个数?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#181%E5%9C%A8%E4%B8%8D%E4%BD%BF%E7%94%A8%E9%A2%9D%E5%A4%96%E7%A9%BA%E9%97%B4%E7%9A%84%E6%83%85%E5%86%B5%E4%B8%8B%E4%BA%A4%E6%8D%A2%E4%B8%A4%E4%B8%AA%E6%95%B0)

##### [4.7.0 strcpy和memcpy的区别](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#182strcpy%E5%92%8Cmemcpy%E7%9A%84%E5%8C%BA%E5%88%AB)

##### [4.7.1 执行int main(int argc, char *argv[])时的内存结构](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#183%E6%89%A7%E8%A1%8Cint-mainint-argc-char-argv%E6%97%B6%E7%9A%84%E5%86%85%E5%AD%98%E7%BB%93%E6%9E%84)

##### [4.7.2 volatile关键字的作用?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#184volatile%E5%85%B3%E9%94%AE%E5%AD%97%E7%9A%84%E4%BD%9C%E7%94%A8)

##### [4.7.3 讲讲大端小端,如何检测(三种方法)](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#185%E8%AE%B2%E8%AE%B2%E5%A4%A7%E7%AB%AF%E5%B0%8F%E7%AB%AF%E5%A6%82%E4%BD%95%E6%A3%80%E6%B5%8B%E4%B8%89%E7%A7%8D%E6%96%B9%E6%B3%95)

##### [4.7.4 查看内存的方法](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#186%E6%9F%A5%E7%9C%8B%E5%86%85%E5%AD%98%E7%9A%84%E6%96%B9%E6%B3%95)

##### [4.7.5 空类会默认添加哪些东西?怎么写?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#187%E7%A9%BA%E7%B1%BB%E4%BC%9A%E9%BB%98%E8%AE%A4%E6%B7%BB%E5%8A%A0%E5%93%AA%E4%BA%9B%E4%B8%9C%E8%A5%BF%E6%80%8E%E4%B9%88%E5%86%99)

##### [4.7.6 标准库是什么?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#188%E6%A0%87%E5%87%86%E5%BA%93%E6%98%AF%E4%BB%80%E4%B9%88)

##### [4.7.7 new、delete、operator new、operator delete、placement new、placement delete](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#189newdeleteoperator-newoperator-deleteplacement-newplacement-delete)

##### [4.7.8 为什么拷贝构造函数必须传引用不能传值?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#190%E4%B8%BA%E4%BB%80%E4%B9%88%E6%8B%B7%E8%B4%9D%E6%9E%84%E9%80%A0%E5%87%BD%E6%95%B0%E5%BF%85%E9%A1%BB%E4%BC%A0%E5%BC%95%E7%94%A8%E4%B8%8D%E8%83%BD%E4%BC%A0%E5%80%BC)

##### [4.7.9 空类的大小是多少?为什么?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#191%E7%A9%BA%E7%B1%BB%E7%9A%84%E5%A4%A7%E5%B0%8F%E6%98%AF%E5%A4%9A%E5%B0%91%E4%B8%BA%E4%BB%80%E4%B9%88)

##### [4.8.0 你什么情况用指针当参数,什么时候用引用,为什么?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#192%E4%BD%A0%E4%BB%80%E4%B9%88%E6%83%85%E5%86%B5%E7%94%A8%E6%8C%87%E9%92%88%E5%BD%93%E5%8F%82%E6%95%B0%E4%BB%80%E4%B9%88%E6%97%B6%E5%80%99%E7%94%A8%E5%BC%95%E7%94%A8%E4%B8%BA%E4%BB%80%E4%B9%88)

##### [4.8.1 大内存申请时候选用哪种?C++变量存在哪?变量的大小存在哪?符号表存在哪?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#193%E5%A4%A7%E5%86%85%E5%AD%98%E7%94%B3%E8%AF%B7%E6%97%B6%E5%80%99%E9%80%89%E7%94%A8%E5%93%AA%E7%A7%8Dc%E5%8F%98%E9%87%8F%E5%AD%98%E5%9C%A8%E5%93%AA%E5%8F%98%E9%87%8F%E7%9A%84%E5%A4%A7%E5%B0%8F%E5%AD%98%E5%9C%A8%E5%93%AA%E7%AC%A6%E5%8F%B7%E8%A1%A8%E5%AD%98%E5%9C%A8%E5%93%AA)


美团篇

---

##### [5.1.0 为什么会有大端小端,htol这一类函数的作用](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#194%E4%B8%BA%E4%BB%80%E4%B9%88%E4%BC%9A%E6%9C%89%E5%A4%A7%E7%AB%AF%E5%B0%8F%E7%AB%AFhtol%E8%BF%99%E4%B8%80%E7%B1%BB%E5%87%BD%E6%95%B0%E7%9A%84%E4%BD%9C%E7%94%A8)

##### [5.1.1 静态函数能定义为虚函数吗?常函数?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#195%E9%9D%99%E6%80%81%E5%87%BD%E6%95%B0%E8%83%BD%E5%AE%9A%E4%B9%89%E4%B8%BA%E8%99%9A%E5%87%BD%E6%95%B0%E5%90%97%E5%B8%B8%E5%87%BD%E6%95%B0)

##### [5.1.2 this指针调用成员变量时,堆栈会发生什么变化?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#196this%E6%8C%87%E9%92%88%E8%B0%83%E7%94%A8%E6%88%90%E5%91%98%E5%8F%98%E9%87%8F%E6%97%B6%E5%A0%86%E6%A0%88%E4%BC%9A%E5%8F%91%E7%94%9F%E4%BB%80%E4%B9%88%E5%8F%98%E5%8C%96)

##### [5.1.3 静态绑定和动态绑定的介绍](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#197%E9%9D%99%E6%80%81%E7%BB%91%E5%AE%9A%E5%92%8C%E5%8A%A8%E6%80%81%E7%BB%91%E5%AE%9A%E7%9A%84%E4%BB%8B%E7%BB%8D)

##### [5.1.4 设计一个类计算子类的个数](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#198%E8%AE%BE%E8%AE%A1%E4%B8%80%E4%B8%AA%E7%B1%BB%E8%AE%A1%E7%AE%97%E5%AD%90%E7%B1%BB%E7%9A%84%E4%B8%AA%E6%95%B0)

##### [5.1.5 怎么快速定位错误出现的地方](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#199%E6%80%8E%E4%B9%88%E5%BF%AB%E9%80%9F%E5%AE%9A%E4%BD%8D%E9%94%99%E8%AF%AF%E5%87%BA%E7%8E%B0%E7%9A%84%E5%9C%B0%E6%96%B9)

##### [5.1.6 虚函数的代价?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#200%E8%99%9A%E5%87%BD%E6%95%B0%E7%9A%84%E4%BB%A3%E4%BB%B7)

##### [5.1.7 类对象的大小](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#201%E7%B1%BB%E5%AF%B9%E8%B1%A1%E7%9A%84%E5%A4%A7%E5%B0%8F)

##### [5.1.8 移动构造函数](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#202%E7%A7%BB%E5%8A%A8%E6%9E%84%E9%80%A0%E5%87%BD%E6%95%B0)

##### [5.1.9 何时需要合成构造函数](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#203%E4%BD%95%E6%97%B6%E9%9C%80%E8%A6%81%E5%90%88%E6%88%90%E6%9E%84%E9%80%A0%E5%87%BD%E6%95%B0)

##### [5.2.0 何时需要合成复制构造函数](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#204%E4%BD%95%E6%97%B6%E9%9C%80%E8%A6%81%E5%90%88%E6%88%90%E5%A4%8D%E5%88%B6%E6%9E%84%E9%80%A0%E5%87%BD%E6%95%B0)

##### [5.2.1 何时需要成员初始化列表?过程是什么?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#205%E4%BD%95%E6%97%B6%E9%9C%80%E8%A6%81%E6%88%90%E5%91%98%E5%88%9D%E5%A7%8B%E5%8C%96%E5%88%97%E8%A1%A8%E8%BF%87%E7%A8%8B%E6%98%AF%E4%BB%80%E4%B9%88)

##### [5.2.2 程序员定义的析构函数被扩展的过程?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#206%E7%A8%8B%E5%BA%8F%E5%91%98%E5%AE%9A%E4%B9%89%E7%9A%84%E6%9E%90%E6%9E%84%E5%87%BD%E6%95%B0%E8%A2%AB%E6%89%A9%E5%B1%95%E7%9A%84%E8%BF%87%E7%A8%8B)

##### [5.2.3 构造函数的执行算法?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#207%E6%9E%84%E9%80%A0%E5%87%BD%E6%95%B0%E7%9A%84%E6%89%A7%E8%A1%8C%E7%AE%97%E6%B3%95)

##### [5.2.4 构造函数的扩展过程?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#208%E6%9E%84%E9%80%A0%E5%87%BD%E6%95%B0%E7%9A%84%E6%89%A9%E5%B1%95%E8%BF%87%E7%A8%8B)

##### [5.2.5 哪些函数不能是虚函数](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#209%E5%93%AA%E4%BA%9B%E5%87%BD%E6%95%B0%E4%B8%8D%E8%83%BD%E6%98%AF%E8%99%9A%E5%87%BD%E6%95%B0)

##### [5.2.6 sizeof 和strlen 的区别](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#210sizeof-%E5%92%8Cstrlen-%E7%9A%84%E5%8C%BA%E5%88%AB)

##### [5.2.7 简述strcpy、sprintf与memcpy的区别](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#211%E7%AE%80%E8%BF%B0strcpysprintf%E4%B8%8Ememcpy%E7%9A%84%E5%8C%BA%E5%88%AB)

##### [5.2.8 编码实现某一变量某位清0或置1](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#212%E7%BC%96%E7%A0%81%E5%AE%9E%E7%8E%B0%E6%9F%90%E4%B8%80%E5%8F%98%E9%87%8F%E6%9F%90%E4%BD%8D%E6%B8%850%E6%88%96%E7%BD%AE1)

##### [5.2.9 将“引用”作为函数参数有哪些特点?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#213%E5%B0%86%E5%BC%95%E7%94%A8%E4%BD%9C%E4%B8%BA%E5%87%BD%E6%95%B0%E5%8F%82%E6%95%B0%E6%9C%89%E5%93%AA%E4%BA%9B%E7%89%B9%E7%82%B9)

##### [5.3.0 分别写出BOOL,int,float,指针类型的变量a 与“零”的比较语句。](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#214%E5%88%86%E5%88%AB%E5%86%99%E5%87%BAboolintfloat%E6%8C%87%E9%92%88%E7%B1%BB%E5%9E%8B%E7%9A%84%E5%8F%98%E9%87%8Fa-%E4%B8%8E%E9%9B%B6%E7%9A%84%E6%AF%94%E8%BE%83%E8%AF%AD%E5%8F%A5)

##### [5.3.1 局部变量全局变量的问题?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#215%E5%B1%80%E9%83%A8%E5%8F%98%E9%87%8F%E5%85%A8%E5%B1%80%E5%8F%98%E9%87%8F%E7%9A%84%E9%97%AE%E9%A2%98)

##### [5.3.2 数组和指针的区别?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#216%E6%95%B0%E7%BB%84%E5%92%8C%E6%8C%87%E9%92%88%E7%9A%84%E5%8C%BA%E5%88%AB)

##### [5.3.3 C++如何阻止一个类被实例化?一般在什么时候将构造函数声明为private?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#217c%E5%A6%82%E4%BD%95%E9%98%BB%E6%AD%A2%E4%B8%80%E4%B8%AA%E7%B1%BB%E8%A2%AB%E5%AE%9E%E4%BE%8B%E5%8C%96%E4%B8%80%E8%88%AC%E5%9C%A8%E4%BB%80%E4%B9%88%E6%97%B6%E5%80%99%E5%B0%86%E6%9E%84%E9%80%A0%E5%87%BD%E6%95%B0%E5%A3%B0%E6%98%8E%E4%B8%BAprivate)

##### [5.3.4 如何禁止自动生成拷贝构造函数?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#218%E5%A6%82%E4%BD%95%E7%A6%81%E6%AD%A2%E8%87%AA%E5%8A%A8%E7%94%9F%E6%88%90%E6%8B%B7%E8%B4%9D%E6%9E%84%E9%80%A0%E5%87%BD%E6%95%B0)

##### [5.3.5 assert与NDEBUGE](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#219assert%E4%B8%8Endebuge)

##### [5.3.6 Denug和release的区别](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#220denug%E5%92%8Crelease%E7%9A%84%E5%8C%BA%E5%88%AB)

##### [5.3.7 main函数有没有返回值](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#221main%E5%87%BD%E6%95%B0%E6%9C%89%E6%B2%A1%E6%9C%89%E8%BF%94%E5%9B%9E%E5%80%BC)

##### [5.3.8 写一个比较大小的模板函数](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#222%E5%86%99%E4%B8%80%E4%B8%AA%E6%AF%94%E8%BE%83%E5%A4%A7%E5%B0%8F%E7%9A%84%E6%A8%A1%E6%9D%BF%E5%87%BD%E6%95%B0)

##### [5.3.9 c++怎么实现一个函数先于main函数运行](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#223c%E6%80%8E%E4%B9%88%E5%AE%9E%E7%8E%B0%E4%B8%80%E4%B8%AA%E5%87%BD%E6%95%B0%E5%85%88%E4%BA%8Emain%E5%87%BD%E6%95%B0%E8%BF%90%E8%A1%8C)

##### [5.4.0 虚函数与纯虚函数的区别在于](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#224%E8%99%9A%E5%87%BD%E6%95%B0%E4%B8%8E%E7%BA%AF%E8%99%9A%E5%87%BD%E6%95%B0%E7%9A%84%E5%8C%BA%E5%88%AB%E5%9C%A8%E4%BA%8E)

##### [5.4.1 智能指针怎么用?智能指针出现循环引用怎么解决?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#225%E6%99%BA%E8%83%BD%E6%8C%87%E9%92%88%E6%80%8E%E4%B9%88%E7%94%A8%E6%99%BA%E8%83%BD%E6%8C%87%E9%92%88%E5%87%BA%E7%8E%B0%E5%BE%AA%E7%8E%AF%E5%BC%95%E7%94%A8%E6%80%8E%E4%B9%88%E8%A7%A3%E5%86%B3)

##### [5.4.2 strcpy函数和strncpy函数的区别?哪个函数更安全?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#226strcpy%E5%87%BD%E6%95%B0%E5%92%8Cstrncpy%E5%87%BD%E6%95%B0%E7%9A%84%E5%8C%BA%E5%88%AB%E5%93%AA%E4%B8%AA%E5%87%BD%E6%95%B0%E6%9B%B4%E5%AE%89%E5%85%A8)

##### [5.4.3 为什么要用static_cast转换而不用c语言中的转换?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#227%E4%B8%BA%E4%BB%80%E4%B9%88%E8%A6%81%E7%94%A8static_cast%E8%BD%AC%E6%8D%A2%E8%80%8C%E4%B8%8D%E7%94%A8c%E8%AF%AD%E8%A8%80%E4%B8%AD%E7%9A%84%E8%BD%AC%E6%8D%A2)

##### [5.4.4 成员函数里memset(this,0,sizeof(*this))会发生什么](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#228%E6%88%90%E5%91%98%E5%87%BD%E6%95%B0%E9%87%8Cmemsetthis0sizeofthis%E4%BC%9A%E5%8F%91%E7%94%9F%E4%BB%80%E4%B9%88)

##### [5.4.5 方法调用的原理(栈,汇编)](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#229%E6%96%B9%E6%B3%95%E8%B0%83%E7%94%A8%E7%9A%84%E5%8E%9F%E7%90%86%E6%A0%88%E6%B1%87%E7%BC%96)

##### [5.4.6 回调函数的作用](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#231%E5%9B%9E%E8%B0%83%E5%87%BD%E6%95%B0%E7%9A%84%E4%BD%9C%E7%94%A8)

##### [随机数的生成](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#232%E9%9A%8F%E6%9C%BA%E6%95%B0%E7%9A%84%E7%94%9F%E6%88%90)

##### [5.4.8 变量的声明和定义有什么区别?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#233%E5%8F%98%E9%87%8F%E7%9A%84%E5%A3%B0%E6%98%8E%E5%92%8C%E5%AE%9A%E4%B9%89%E6%9C%89%E4%BB%80%E4%B9%88%E5%8C%BA%E5%88%AB)

##### [5.4.9 请简述#ifdef、#else、#endif、和#ifndef的作用是?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#234%E8%AF%B7%E7%AE%80%E8%BF%B0ifdefelseendif%E5%92%8Cifndef%E7%9A%84%E4%BD%9C%E7%94%A8%E6%98%AF)


头条篇

---

##### [6.1.0 请写出int、bool、float、指针变量与"零值"比较的if语句?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#235%E8%AF%B7%E5%86%99%E5%87%BAintboolfloat%E6%8C%87%E9%92%88%E5%8F%98%E9%87%8F%E4%B8%8E%E9%9B%B6%E5%80%BC%E6%AF%94%E8%BE%83%E7%9A%84if%E8%AF%AD%E5%8F%A5)

##### [6.1.1 结构体是否可以直接赋值?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#236%E7%BB%93%E6%9E%84%E4%BD%93%E6%98%AF%E5%90%A6%E5%8F%AF%E4%BB%A5%E7%9B%B4%E6%8E%A5%E8%B5%8B%E5%80%BC)

##### [6.1.2 sizeof和strlen的区别?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#237sizeof%E5%92%8Cstrlen%E7%9A%84%E5%8C%BA%E5%88%AB)

##### [6.1.3 C语言和C++语言中的关键字static有什么区别?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#238c%E8%AF%AD%E8%A8%80%E5%92%8Cc%E8%AF%AD%E8%A8%80%E4%B8%AD%E7%9A%84%E5%85%B3%E9%94%AE%E5%AD%97static%E6%9C%89%E4%BB%80%E4%B9%88%E5%8C%BA%E5%88%AB)

##### [6.1.4 C语言的malloc和C++中的new有什么区别?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#239c%E8%AF%AD%E8%A8%80%E7%9A%84malloc%E5%92%8Cc%E4%B8%AD%E7%9A%84new%E6%9C%89%E4%BB%80%E4%B9%88%E5%8C%BA%E5%88%AB)

##### [6.1.5 请写一个标准宏MIN?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#240%E8%AF%B7%E5%86%99%E4%B8%80%E4%B8%AA%E6%A0%87%E5%87%86%E5%AE%8Fmin)

##### [6.1.6 ++i和i++的区别?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#241i%E5%92%8Ci%E7%9A%84%E5%8C%BA%E5%88%AB)

##### [6.1.7 关键字volatile有什么作用?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#242%E5%85%B3%E9%94%AE%E5%AD%97volatile%E6%9C%89%E4%BB%80%E4%B9%88%E4%BD%9C%E7%94%A8)

##### [6.1.8 一个参数可以既是const又是volatile吗?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#243%E4%B8%80%E4%B8%AA%E5%8F%82%E6%95%B0%E5%8F%AF%E4%BB%A5%E6%97%A2%E6%98%AFconst%E5%8F%88%E6%98%AFvolatile%E5%90%97)

##### [6.1.9 *a和&a有什么区别?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#244a%E5%92%8Ca%E6%9C%89%E4%BB%80%E4%B9%88%E5%8C%BA%E5%88%AB)

##### [6.2.0 用C语言编写一个死循环程序?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#245%E7%94%A8c%E8%AF%AD%E8%A8%80%E7%BC%96%E5%86%99%E4%B8%80%E4%B8%AA%E6%AD%BB%E5%BE%AA%E7%8E%AF%E7%A8%8B%E5%BA%8F)

##### [6.2.1 全局变量和局部变量有什么区别?是怎么实现的?操作系统和编译器是怎么知道的?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#247%E5%85%A8%E5%B1%80%E5%8F%98%E9%87%8F%E5%92%8C%E5%B1%80%E9%83%A8%E5%8F%98%E9%87%8F%E6%9C%89%E4%BB%80%E4%B9%88%E5%8C%BA%E5%88%AB%E6%98%AF%E6%80%8E%E4%B9%88%E5%AE%9E%E7%8E%B0%E7%9A%84%E6%93%8D%E4%BD%9C%E7%B3%BB%E7%BB%9F%E5%92%8C%E7%BC%96%E8%AF%91%E5%99%A8%E6%98%AF%E6%80%8E%E4%B9%88%E7%9F%A5%E9%81%93%E7%9A%84)

##### [6.2.2 请简述C/C++程序编译的内存分配情况?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#248%E8%AF%B7%E7%AE%80%E8%BF%B0cc%E7%A8%8B%E5%BA%8F%E7%BC%96%E8%AF%91%E7%9A%84%E5%86%85%E5%AD%98%E5%88%86%E9%85%8D%E6%83%85%E5%86%B5)

##### [6.2.3 请简述strcpy、sprintf和memcpy的区别?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#249%E8%AF%B7%E7%AE%80%E8%BF%B0strcpysprintf%E5%92%8Cmemcpy%E7%9A%84%E5%8C%BA%E5%88%AB)

##### [6.2.4 请解释((void ()())0)()的含义?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#250%E8%AF%B7%E8%A7%A3%E9%87%8Avoid-0%E7%9A%84%E5%90%AB%E4%B9%89)

##### [6.2.5 C语言的指针和引用和C++的有什么区别?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#251c%E8%AF%AD%E8%A8%80%E7%9A%84%E6%8C%87%E9%92%88%E5%92%8C%E5%BC%95%E7%94%A8%E5%92%8Cc%E7%9A%84%E6%9C%89%E4%BB%80%E4%B9%88%E5%8C%BA%E5%88%AB)

##### [6.2.6 typedef和define有什么区别?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#252typedef%E5%92%8Cdefine%E6%9C%89%E4%BB%80%E4%B9%88%E5%8C%BA%E5%88%AB)

##### [6.2.7 指针常量和常量指针有什么区别?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#253%E6%8C%87%E9%92%88%E5%B8%B8%E9%87%8F%E5%92%8C%E5%B8%B8%E9%87%8F%E6%8C%87%E9%92%88%E6%9C%89%E4%BB%80%E4%B9%88%E5%8C%BA%E5%88%AB)

##### [6.2.8 请简述队列和栈的异同?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#254%E8%AF%B7%E7%AE%80%E8%BF%B0%E9%98%9F%E5%88%97%E5%92%8C%E6%A0%88%E7%9A%84%E5%BC%82%E5%90%8C)

##### [6.2.9 如何设置地址为0x67a9的整型变量的值为0xaa66?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#255%E5%A6%82%E4%BD%95%E8%AE%BE%E7%BD%AE%E5%9C%B0%E5%9D%80%E4%B8%BA0x67a9%E7%9A%84%E6%95%B4%E5%9E%8B%E5%8F%98%E9%87%8F%E7%9A%84%E5%80%BC%E4%B8%BA0xaa66)

##### [6.3.0 请编程实现字符串转换为数字?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#256%E8%AF%B7%E7%BC%96%E7%A8%8B%E5%AE%9E%E7%8E%B0%E5%AD%97%E7%AC%A6%E4%B8%B2%E8%BD%AC%E6%8D%A2%E4%B8%BA%E6%95%B0%E5%AD%97)

##### [6.3.1 C语言的结构体和C++的有什么区别?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#257c%E8%AF%AD%E8%A8%80%E7%9A%84%E7%BB%93%E6%9E%84%E4%BD%93%E5%92%8Cc%E7%9A%84%E6%9C%89%E4%BB%80%E4%B9%88%E5%8C%BA%E5%88%AB)

##### [6.3.2 简述指针常量与常量指针的区别?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#258%E7%AE%80%E8%BF%B0%E6%8C%87%E9%92%88%E5%B8%B8%E9%87%8F%E4%B8%8E%E5%B8%B8%E9%87%8F%E6%8C%87%E9%92%88%E7%9A%84%E5%8C%BA%E5%88%AB)

##### [6.3.3 如何避免"野指针"?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#259%E5%A6%82%E4%BD%95%E9%81%BF%E5%85%8D%E9%87%8E%E6%8C%87%E9%92%88)

##### [6.3.4 句柄和指针的区别和联系是什么?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#260%E5%8F%A5%E6%9F%84%E5%92%8C%E6%8C%87%E9%92%88%E7%9A%84%E5%8C%BA%E5%88%AB%E5%92%8C%E8%81%94%E7%B3%BB%E6%98%AF%E4%BB%80%E4%B9%88)

##### [6.3.5 new/delete与malloc/free的区别是什么?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#261newdelete%E4%B8%8Emallocfree%E7%9A%84%E5%8C%BA%E5%88%AB%E6%98%AF%E4%BB%80%E4%B9%88)

##### [6.3.6 请说一说extern "C"?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#262%E8%AF%B7%E8%AF%B4%E4%B8%80%E8%AF%B4extern-c)

##### [6.3.7 请说一说C++中struct和class的区别是什么?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#263%E8%AF%B7%E8%AF%B4%E4%B8%80%E8%AF%B4c%E4%B8%ADstruct%E5%92%8Cclass%E7%9A%84%E5%8C%BA%E5%88%AB%E6%98%AF%E4%BB%80%E4%B9%88)

##### [6.3.8 new、delete、malloc、free关系](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#264newdeletemallocfree%E5%85%B3%E7%B3%BB)

##### [6.3.9 delete与 delete []区别](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#265delete%E4%B8%8E-delete-%E5%8C%BA%E5%88%AB)

##### [6.4.0 C++有哪些性质(面向对象特点)](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#266c%E6%9C%89%E5%93%AA%E4%BA%9B%E6%80%A7%E8%B4%A8%E9%9D%A2%E5%90%91%E5%AF%B9%E8%B1%A1%E7%89%B9%E7%82%B9)

##### [6.4.1 子类析构时要调用父类的析构函数吗?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#267%E5%AD%90%E7%B1%BB%E6%9E%90%E6%9E%84%E6%97%B6%E8%A6%81%E8%B0%83%E7%94%A8%E7%88%B6%E7%B1%BB%E7%9A%84%E6%9E%90%E6%9E%84%E5%87%BD%E6%95%B0%E5%90%97)

##### [6.4.2 多态,虚函数,纯虚函数](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#268%E5%A4%9A%E6%80%81%E8%99%9A%E5%87%BD%E6%95%B0%E7%BA%AF%E8%99%9A%E5%87%BD%E6%95%B0)

##### [6.4.3 求下面函数的返回值(微软)](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#269%E6%B1%82%E4%B8%8B%E9%9D%A2%E5%87%BD%E6%95%B0%E7%9A%84%E8%BF%94%E5%9B%9E%E5%80%BC%E5%BE%AE%E8%BD%AF)

##### [6.4.4 什么是“引用”?申明和使用“引用”要注意哪些问题?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#270%E4%BB%80%E4%B9%88%E6%98%AF%E5%BC%95%E7%94%A8%E7%94%B3%E6%98%8E%E5%92%8C%E4%BD%BF%E7%94%A8%E5%BC%95%E7%94%A8%E8%A6%81%E6%B3%A8%E6%84%8F%E5%93%AA%E4%BA%9B%E9%97%AE%E9%A2%98)

##### [6.4.5 将“引用”作为函数参数有哪些特点?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#271%E5%B0%86%E5%BC%95%E7%94%A8%E4%BD%9C%E4%B8%BA%E5%87%BD%E6%95%B0%E5%8F%82%E6%95%B0%E6%9C%89%E5%93%AA%E4%BA%9B%E7%89%B9%E7%82%B9)

##### [6.4.6 在什么时候需要使用“常引用”?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#272%E5%9C%A8%E4%BB%80%E4%B9%88%E6%97%B6%E5%80%99%E9%9C%80%E8%A6%81%E4%BD%BF%E7%94%A8%E5%B8%B8%E5%BC%95%E7%94%A8)

##### [6.5.0 结构与联合有和区别?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#273%E7%BB%93%E6%9E%84%E4%B8%8E%E8%81%94%E5%90%88%E6%9C%89%E5%92%8C%E5%8C%BA%E5%88%AB)

##### [6.5.1 试写出程序结果](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#274%E8%AF%95%E5%86%99%E5%87%BA%E7%A8%8B%E5%BA%8F%E7%BB%93%E6%9E%9C)

##### [6.5.2 重载(overload)和重写(overried,有的书也叫做“覆盖”)的区别?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#275%E9%87%8D%E8%BD%BDoverload%E5%92%8C%E9%87%8D%E5%86%99overried%E6%9C%89%E7%9A%84%E4%B9%A6%E4%B9%9F%E5%8F%AB%E5%81%9A%E8%A6%86%E7%9B%96%E7%9A%84%E5%8C%BA%E5%88%AB)

##### [6.5.3 有哪几种情况只能用intialization list 而不能用assignment?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#276%E6%9C%89%E5%93%AA%E5%87%A0%E7%A7%8D%E6%83%85%E5%86%B5%E5%8F%AA%E8%83%BD%E7%94%A8intialization-list-%E8%80%8C%E4%B8%8D%E8%83%BD%E7%94%A8assignment)

滴滴篇

---

##### [7.1.0 C++是不是类型安全的?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#277-c%E6%98%AF%E4%B8%8D%E6%98%AF%E7%B1%BB%E5%9E%8B%E5%AE%89%E5%85%A8%E7%9A%84)

##### [7.1.1 main 函数执行以前,还会执行什么代码?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#278-main-%E5%87%BD%E6%95%B0%E6%89%A7%E8%A1%8C%E4%BB%A5%E5%89%8D%E8%BF%98%E4%BC%9A%E6%89%A7%E8%A1%8C%E4%BB%80%E4%B9%88%E4%BB%A3%E7%A0%81)

##### [7.1.2 描述内存分配方式以及它们的区别?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#279-%E6%8F%8F%E8%BF%B0%E5%86%85%E5%AD%98%E5%88%86%E9%85%8D%E6%96%B9%E5%BC%8F%E4%BB%A5%E5%8F%8A%E5%AE%83%E4%BB%AC%E7%9A%84%E5%8C%BA%E5%88%AB)

##### [7.1.3 分别写出BOOL,int,float,指针类型的变量a 与“零”的比较语句。](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#280%E5%88%86%E5%88%AB%E5%86%99%E5%87%BAboolintfloat%E6%8C%87%E9%92%88%E7%B1%BB%E5%9E%8B%E7%9A%84%E5%8F%98%E9%87%8Fa-%E4%B8%8E%E9%9B%B6%E7%9A%84%E6%AF%94%E8%BE%83%E8%AF%AD%E5%8F%A5)

##### [7.1.4 请说出const与#define 相比,有何优点?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#281%E8%AF%B7%E8%AF%B4%E5%87%BAconst%E4%B8%8Edefine-%E7%9B%B8%E6%AF%94%E6%9C%89%E4%BD%95%E4%BC%98%E7%82%B9)

##### [7.1.5 简述数组与指针的区别?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#282%E7%AE%80%E8%BF%B0%E6%95%B0%E7%BB%84%E4%B8%8E%E6%8C%87%E9%92%88%E7%9A%84%E5%8C%BA%E5%88%AB)

##### [7.1.6 int (*s[10])(int) 表示的是什么?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#283-int-s10int-%E8%A1%A8%E7%A4%BA%E7%9A%84%E6%98%AF%E4%BB%80%E4%B9%88)

##### [7.1.7 栈内存与文字常量区](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#284%E6%A0%88%E5%86%85%E5%AD%98%E4%B8%8E%E6%96%87%E5%AD%97%E5%B8%B8%E9%87%8F%E5%8C%BA)

##### [7.1.8 将程序跳转到指定内存地址](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#285%E5%B0%86%E7%A8%8B%E5%BA%8F%E8%B7%B3%E8%BD%AC%E5%88%B0%E6%8C%87%E5%AE%9A%E5%86%85%E5%AD%98%E5%9C%B0%E5%9D%80)

##### [7.1.9 int id[sizeof(unsigned long)];这个对吗?为什么?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#286int-idsizeofunsigned-long%E8%BF%99%E4%B8%AA%E5%AF%B9%E5%90%97%E4%B8%BA%E4%BB%80%E4%B9%88)

##### [7.2.0 引用与指针有什么区别?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#287%E5%BC%95%E7%94%A8%E4%B8%8E%E6%8C%87%E9%92%88%E6%9C%89%E4%BB%80%E4%B9%88%E5%8C%BA%E5%88%AB)

##### [7.2.1 const 与 #define 的比较 ,const有什么优点?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#288const-%E4%B8%8E-define-%E7%9A%84%E6%AF%94%E8%BE%83-const%E6%9C%89%E4%BB%80%E4%B9%88%E4%BC%98%E7%82%B9)


京东篇

---

##### [8.1.0 内存的分配方式有几种?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#289%E5%86%85%E5%AD%98%E7%9A%84%E5%88%86%E9%85%8D%E6%96%B9%E5%BC%8F%E6%9C%89%E5%87%A0%E7%A7%8D)

##### [8.1.1 基类的析构函数不是虚函数,会带来什么问题?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#290%E5%9F%BA%E7%B1%BB%E7%9A%84%E6%9E%90%E6%9E%84%E5%87%BD%E6%95%B0%E4%B8%8D%E6%98%AF%E8%99%9A%E5%87%BD%E6%95%B0%E4%BC%9A%E5%B8%A6%E6%9D%A5%E4%BB%80%E4%B9%88%E9%97%AE%E9%A2%98)

##### [8.1.2 全局变量和局部变量有什么区别?是怎么实现的?操作系统和编译器是怎么知道的?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#291%E5%85%A8%E5%B1%80%E5%8F%98%E9%87%8F%E5%92%8C%E5%B1%80%E9%83%A8%E5%8F%98%E9%87%8F%E6%9C%89%E4%BB%80%E4%B9%88%E5%8C%BA%E5%88%AB%E6%98%AF%E6%80%8E%E4%B9%88%E5%AE%9E%E7%8E%B0%E7%9A%84%E6%93%8D%E4%BD%9C%E7%B3%BB%E7%BB%9F%E5%92%8C%E7%BC%96%E8%AF%91%E5%99%A8%E6%98%AF%E6%80%8E%E4%B9%88%E7%9F%A5%E9%81%93%E7%9A%84)

##### [8.1.3 const关键字(反义词mutable)](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#292-const%E5%85%B3%E9%94%AE%E5%AD%97%E5%8F%8D%E4%B9%89%E8%AF%8Dmutable)

##### [8.1.4 static关键字](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#293-static%E5%85%B3%E9%94%AE%E5%AD%97)

##### [8.1.5 extern关键字](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#294-extern%E5%85%B3%E9%94%AE%E5%AD%97)

##### [8.1.6 指针和引用的区别](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#295-%E6%8C%87%E9%92%88%E5%92%8C%E5%BC%95%E7%94%A8%E7%9A%84%E5%8C%BA%E5%88%AB)

##### [8.1.7 explicit是干什么用的 ?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#296explicit%E6%98%AF%E5%B9%B2%E4%BB%80%E4%B9%88%E7%94%A8%E7%9A%84-)

##### [8.1.8 浅拷贝与深拷贝?为什么要使用深拷贝?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#299-%E6%B5%85%E6%8B%B7%E8%B4%9D%E4%B8%8E%E6%B7%B1%E6%8B%B7%E8%B4%9D%E4%B8%BA%E4%BB%80%E4%B9%88%E8%A6%81%E4%BD%BF%E7%94%A8%E6%B7%B1%E6%8B%B7%E8%B4%9D)

##### [8.1.9 深入谈谈堆和栈?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#300%E6%B7%B1%E5%85%A5%E8%B0%88%E8%B0%88%E5%A0%86%E5%92%8C%E6%A0%88)

##### [8.2.0 内存的静态分配和动态分配的区别?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#301%E5%86%85%E5%AD%98%E7%9A%84%E9%9D%99%E6%80%81%E5%88%86%E9%85%8D%E5%92%8C%E5%8A%A8%E6%80%81%E5%88%86%E9%85%8D%E7%9A%84%E5%8C%BA%E5%88%AB)

##### [8.2.1 什么是继承?什么是多态?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#303-%E4%BB%80%E4%B9%88%E6%98%AF%E7%BB%A7%E6%89%BF%E4%BB%80%E4%B9%88%E6%98%AF%E5%A4%9A%E6%80%81)

##### [8.2.2 虚函数与纯虚函数的区别?含有纯虚函数的类叫什么?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#306-%E8%99%9A%E5%87%BD%E6%95%B0%E4%B8%8E%E7%BA%AF%E8%99%9A%E5%87%BD%E6%95%B0%E7%9A%84%E5%8C%BA%E5%88%AB%E5%90%AB%E6%9C%89%E7%BA%AF%E8%99%9A%E5%87%BD%E6%95%B0%E7%9A%84%E7%B1%BB%E5%8F%AB%E4%BB%80%E4%B9%88)


mysql篇

---

##### [9.1.0 主键 超键 候选键 外键](09.MySQL篇/9.1.0%20%E4%B8%BB%E9%94%AE%20%E8%B6%85%E9%94%AE%20%E5%80%99%E9%80%89%E9%94%AE%20%E5%A4%96%E9%94%AE.md)

##### [9.1.1 数据库事务的四个特性及含义](09.MySQL篇/9.1.1%20%E6%95%B0%E6%8D%AE%E5%BA%93%E4%BA%8B%E5%8A%A1%E7%9A%84%E5%9B%9B%E4%B8%AA%E7%89%B9%E6%80%A7%E5%8F%8A%E5%90%AB%E4%B9%89.md)

##### [9.1.2 视图的作用,视图可以更改么?](09.MySQL篇/9.1.2%20%E8%A7%86%E5%9B%BE%E7%9A%84%E4%BD%9C%E7%94%A8%EF%BC%8C%E8%A7%86%E5%9B%BE%E5%8F%AF%E4%BB%A5%E6%9B%B4%E6%94%B9%E4%B9%88%EF%BC%9F.md)

##### [9.1.3 drop,delete与truncate的区别](09.MySQL篇/9.1.3%20drop%2Cdelete%E4%B8%8Etruncate%E7%9A%84%E5%8C%BA%E5%88%AB.md)

##### [9.1.4 索引的工作原理及其种类](09.MySQL篇/9.1.4%20%E7%B4%A2%E5%BC%95%E7%9A%84%E5%B7%A5%E4%BD%9C%E5%8E%9F%E7%90%86%E5%8F%8A%E5%85%B6%E7%A7%8D%E7%B1%BB.md)

##### [9.1.5 连接的种类](09.MySQL篇/9.1.5%20%E8%BF%9E%E6%8E%A5%E7%9A%84%E7%A7%8D%E7%B1%BB.md)

##### [9.1.6 数据库范式](09.MySQL篇/9.1.6%20%E6%95%B0%E6%8D%AE%E5%BA%93%E8%8C%83%E5%BC%8F.md)

##### [9.1.7 数据库优化的思路](09.MySQL篇/9.1.7%20%E6%95%B0%E6%8D%AE%E5%BA%93%E4%BC%98%E5%8C%96%E7%9A%84%E6%80%9D%E8%B7%AF.md)

##### [9.1.8 存储过程与触发器的区别](09.MySQL篇/9.1.8%20%E5%AD%98%E5%82%A8%E8%BF%87%E7%A8%8B%E4%B8%8E%E8%A7%A6%E5%8F%91%E5%99%A8%E7%9A%84%E5%8C%BA%E5%88%AB.md)


redis篇

---
##### [10.1.0 使用Redis有哪些好处?](10.Redis篇/10.1.0%20%E4%BD%BF%E7%94%A8Redis%E6%9C%89%E5%93%AA%E4%BA%9B%E5%A5%BD%E5%A4%84%EF%BC%9F.md)

##### [10.1.1 redis相比memcached有哪些优势?](10.Redis篇/10.1.1%20redis%E7%9B%B8%E6%AF%94memcached%E6%9C%89%E5%93%AA%E4%BA%9B%E4%BC%98%E5%8A%BF%EF%BC%9F.md)

##### [10.1.2 redis常见性能问题和解决方案](10.Redis篇/10.1.2%20redis%E5%B8%B8%E8%A7%81%E6%80%A7%E8%83%BD%E9%97%AE%E9%A2%98%E5%92%8C%E8%A7%A3%E5%86%B3%E6%96%B9%E6%A1%88.md)

##### [10.1.3 MySQL里有2000w数据,redis中只存20w的数据,如何保证redis中的数据都是热点数据](10.Redis篇/10.1.3%20MySQL%E9%87%8C%E6%9C%892000w%E6%95%B0%E6%8D%AE%EF%BC%8Credis%E4%B8%AD%E5%8F%AA%E5%AD%9820w%E7%9A%84%E6%95%B0%E6%8D%AE%EF%BC%8C%E5%A6%82%E4%BD%95%E4%BF%9D%E8%AF%81redis%E4%B8%AD%E7%9A%84%E6%95%B0%E6%8D%AE%E9%83%BD%E6%98%AF%E7%83%AD%E7%82%B9%E6%95%B0%E6%8D%AE.md)

##### [10.1.4 Memcache与Redis的区别都有哪些?](10.Redis篇/10.1.4%20Memcache%E4%B8%8ERedis%E7%9A%84%E5%8C%BA%E5%88%AB%E9%83%BD%E6%9C%89%E5%93%AA%E4%BA%9B%EF%BC%9F.md)

##### [10.1.5 Redis 常见的性能问题都有哪些?如何解决?](10.Redis篇/10.1.5%20Redis%20%E5%B8%B8%E8%A7%81%E7%9A%84%E6%80%A7%E8%83%BD%E9%97%AE%E9%A2%98%E9%83%BD%E6%9C%89%E5%93%AA%E4%BA%9B%EF%BC%9F%E5%A6%82%E4%BD%95%E8%A7%A3%E5%86%B3%EF%BC%9F.md)

##### 10.1.6 redis 最适合的场景

##### [10.1.7 Redis的同步机制了解么?](10.Redis篇/10.1.7%20Redis%E7%9A%84%E5%90%8C%E6%AD%A5%E6%9C%BA%E5%88%B6%E4%BA%86%E8%A7%A3%E4%B9%88%EF%BC%9F.md)

##### [10.1.8 是否使用过Redis集群,集群的原理是什么?](10.Redis篇/10.1.8%20%E6%98%AF%E5%90%A6%E4%BD%BF%E7%94%A8%E8%BF%87Redis%E9%9B%86%E7%BE%A4%EF%BC%8C%E9%9B%86%E7%BE%A4%E7%9A%84%E5%8E%9F%E7%90%86%E6%98%AF%E4%BB%80%E4%B9%88%EF%BC%9F.md)

##### 10.1.9 redis集群如何保证一致性?


MongoDB篇

---
##### [11.1.0 什么是MongoDB?](11.MongoDB篇/11.1.0%20%E4%BB%80%E4%B9%88%E6%98%AFMongoDB%EF%BC%9F.md)

##### [11.1.1 MongoDB是由哪种语言写的?](11.MongoDB篇/11.1.1%20MongoDB%E6%98%AF%E7%94%B1%E5%93%AA%E7%A7%8D%E8%AF%AD%E8%A8%80%E5%86%99%E7%9A%84%EF%BC%9F.md)

##### [11.1.2 MongoDB的优势有哪些?](11.MongoDB篇/11.1.2%20MongoDB%E7%9A%84%E4%BC%98%E5%8A%BF%E6%9C%89%E5%93%AA%E4%BA%9B%EF%BC%9F.md)

##### [11.1.3 什么是数据库?](11.MongoDB篇/11.1.3%20%E4%BB%80%E4%B9%88%E6%98%AF%E6%95%B0%E6%8D%AE%E5%BA%93%EF%BC%9F.md)

##### [11.1.4 什么是集合?](11.MongoDB篇/11.1.4%20%E4%BB%80%E4%B9%88%E6%98%AF%E9%9B%86%E5%90%88%EF%BC%9F.md)

##### [11.1.5 什么是文档?](11.MongoDB篇/11.1.5%20%E4%BB%80%E4%B9%88%E6%98%AF%E6%96%87%E6%A1%A3%EF%BC%9F.md)

##### [11.1.6 MongoDB和关系型数据库术语对比图](11.MongoDB篇/11.1.6%20MongoDB%E5%92%8C%E5%85%B3%E7%B3%BB%E5%9E%8B%E6%95%B0%E6%8D%AE%E5%BA%93%E6%9C%AF%E8%AF%AD%E5%AF%B9%E6%AF%94%E5%9B%BE.md)

##### [11.1.7 什么是“mongod”?](11.MongoDB篇/11.1.7%20%E4%BB%80%E4%B9%88%E6%98%AF%E2%80%9Cmongod%E2%80%9D%EF%BC%9F.md)

##### [11.1.8 “mongod”参数有什么?](11.MongoDB篇/11.1.8%20%E2%80%9Cmongod%E2%80%9D%E5%8F%82%E6%95%B0%E6%9C%89%E4%BB%80%E4%B9%88%EF%BC%9F.md)

##### [11.1.9 什么是“mongo”?](11.MongoDB篇/11.1.9%20%E4%BB%80%E4%B9%88%E6%98%AF%E2%80%9Cmongo%E2%80%9D%EF%BC%9F.md)

##### [11.2.0 MongoDB哪个命令可以切换数据库?](11.MongoDB篇/11.2.0%20MongoDB%E5%93%AA%E4%B8%AA%E5%91%BD%E4%BB%A4%E5%8F%AF%E4%BB%A5%E5%88%87%E6%8D%A2%E6%95%B0%E6%8D%AE%E5%BA%93%EF%BC%9F.md)

##### [11.2.1 什么是非关系型数据库?](11.MongoDB篇/11.2.1%20%E4%BB%80%E4%B9%88%E6%98%AF%E9%9D%9E%E5%85%B3%E7%B3%BB%E5%9E%8B%E6%95%B0%E6%8D%AE%E5%BA%93%EF%BC%9F.md)

##### [11.2.2 非关系型数据库有哪些类型?](11.MongoDB篇/11.2.2%20%E9%9D%9E%E5%85%B3%E7%B3%BB%E5%9E%8B%E6%95%B0%E6%8D%AE%E5%BA%93%E6%9C%89%E5%93%AA%E4%BA%9B%E7%B1%BB%E5%9E%8B%EF%BC%9F.md)

##### [11.2.3 为什么用MongoDB?](11.MongoDB篇/11.2.3%20%E4%B8%BA%E4%BB%80%E4%B9%88%E7%94%A8MOngoDB%EF%BC%9F.md)

##### [11.2.4 在哪些场景使用MongoDB?](11.MongoDB篇/11.2.4%20%E5%9C%A8%E5%93%AA%E4%BA%9B%E5%9C%BA%E6%99%AF%E4%BD%BF%E7%94%A8MongoDB%EF%BC%9F.md)

##### 11.2.5 MongoDB中的命名空间是什么意思?

##### 11.2.6 哪些语言支持MongoDB?

##### [11.2.7 在MongoDB中如何创建一个新的数据库?](11.MongoDB篇/11.2.7%20%E5%9C%A8MongoDB%E4%B8%AD%E5%A6%82%E4%BD%95%E5%88%9B%E5%BB%BA%E4%B8%80%E4%B8%AA%E6%96%B0%E7%9A%84%E6%95%B0%E6%8D%AE%E5%BA%93%EF%BC%9F.md)

##### [11.2.8 在MongoDB中如何查看数据库列表?](11.MongoDB篇/11.2.8%20%E5%9C%A8MongoDB%E4%B8%AD%E5%A6%82%E4%BD%95%E6%9F%A5%E7%9C%8B%E6%95%B0%E6%8D%AE%E5%BA%93%E5%88%97%E8%A1%A8%EF%BC%9F.md)

##### [11.2.9 MongoDB中的分片是什么意思?](11.MongoDB篇/11.2.9%20MongoDB%E4%B8%AD%E7%9A%84%E5%88%86%E7%89%87%E6%98%AF%E4%BB%80%E4%B9%88%E6%84%8F%E6%80%9D%EF%BC%9F.md)

##### [11.3.0 如何查看使用MongoDB的连接?](11.MongoDB篇/11.3.0%20%E5%A6%82%E4%BD%95%E6%9F%A5%E7%9C%8B%E4%BD%BF%E7%94%A8MongoDB%E7%9A%84%E8%BF%9E%E6%8E%A5%EF%BC%9F.md)

##### [11.3.1 什么是复制?](11.MongoDB篇/11.3.1%20%E4%BB%80%E4%B9%88%E6%98%AF%E5%A4%8D%E5%88%B6%EF%BC%9F.md)

##### [11.3.2 在MongoDB中如何在集合中插入一个文档?](11.MongoDB篇/11.3.2%20%E5%9C%A8MongoDB%E4%B8%AD%E5%A6%82%E4%BD%95%E5%9C%A8%E9%9B%86%E5%90%88%E4%B8%AD%E6%8F%92%E5%85%A5%E4%B8%80%E4%B8%AA%E6%96%87%E6%A1%A3%EF%BC%9F.md)

##### [11.3.3 在MongoDB中如何除去一个数据库?](11.MongoDB篇/11.3.3%20%E5%9C%A8MongoDB%E4%B8%AD%E5%A6%82%E4%BD%95%E9%99%A4%E5%8E%BB%E4%B8%80%E4%B8%AA%E6%95%B0%E6%8D%AE%E5%BA%93%EF%BC%9F.md)

##### [11.3.4 在MongoDB中如何创建一个集合?](11.MongoDB篇/11.3.4%20%E5%9C%A8MongoDB%E4%B8%AD%E5%A6%82%E4%BD%95%E5%88%9B%E5%BB%BA%E4%B8%80%E4%B8%AA%E9%9B%86%E5%90%88%EF%BC%9F.md)

##### [11.3.5 在MongoDB中如何查看一个已经创建的集合?](11.MongoDB篇/11.3.5%20%E5%9C%A8MongoDB%E4%B8%AD%E5%A6%82%E4%BD%95%E6%9F%A5%E7%9C%8B%E4%B8%80%E4%B8%AA%E5%B7%B2%E7%BB%8F%E5%88%9B%E5%BB%BA%E7%9A%84%E9%9B%86%E5%90%88%EF%BC%9F.md)

##### [11.3.6 在MongoDB中如何删除一个集合?](11.MongoDB篇/11.3.6%20%E5%9C%A8MongoDB%E4%B8%AD%E5%A6%82%E4%BD%95%E5%88%A0%E9%99%A4%E4%B8%80%E4%B8%AA%E9%9B%86%E5%90%88%EF%BC%9F.md)

##### [11.3.7 为什么要在MongoDB中使用分析器?](11.MongoDB篇/11.3.7%20%E4%B8%BA%E4%BB%80%E4%B9%88%E8%A6%81%E5%9C%A8MongoDB%E4%B8%AD%E4%BD%BF%E7%94%A8%E5%88%86%E6%9E%90%E5%99%A8%EF%BC%9F.md)

##### [11.3.8 MongoDB支持主键外键关系吗?](11.MongoDB篇/11.3.8%20MongoDB%E6%94%AF%E6%8C%81%E4%B8%BB%E9%94%AE%E5%A4%96%E9%94%AE%E5%85%B3%E7%B3%BB%E5%90%97%EF%BC%9F.md)

##### [11.3.9 MongoDB支持哪些数据类型?](11.MongoDB篇/11.3.9%20MongoDB%E6%94%AF%E6%8C%81%E5%93%AA%E4%BA%9B%E6%95%B0%E6%8D%AE%E7%B1%BB%E5%9E%8B%EF%BC%9F.md)

##### 11.4.0 为什么要在MongoDB中用"Code"数据类型?

##### 11.4.1 为什么要在MongoDB中用"Regular Expression"数据类型?

##### 11.4.2 为什么在MongoDB中使用"Object ID"数据类型?

##### [11.4.3 如何在集合中插入一个文档?](11.MongoDB篇/11.4.3%20%E5%A6%82%E4%BD%95%E5%9C%A8%E9%9B%86%E5%90%88%E4%B8%AD%E6%8F%92%E5%85%A5%E4%B8%80%E4%B8%AA%E6%96%87%E6%A1%A3%EF%BC%9F.md)

##### [11.4.4 “ObjectID”有哪些部分组成?](11.MongoDB篇/11.4.4%20%E2%80%9CObjectID%E2%80%9D%E6%9C%89%E5%93%AA%E4%BA%9B%E9%83%A8%E5%88%86%E7%BB%84%E6%88%90%EF%BC%9F.md)

##### [11.4.5 在MongoDB中什么是索引?](11.MongoDB篇/11.4.5%20%E5%9C%A8MongoDb%E4%B8%AD%E4%BB%80%E4%B9%88%E6%98%AF%E7%B4%A2%E5%BC%95%EF%BC%9F.md)

##### [11.4.6 如何添加索引?](11.MongoDB篇/11.4.6%20%E5%A6%82%E4%BD%95%E6%B7%BB%E5%8A%A0%E7%B4%A2%E5%BC%95%EF%BC%9F.md)

##### [11.4.7 MongoDB有哪些可替代产品?](11.MongoDB篇/11.4.7%20MongoDB%E6%9C%89%E5%93%AA%E4%BA%9B%E5%8F%AF%E6%9B%BF%E4%BB%A3%E4%BA%A7%E5%93%81%EF%BC%9F.md)

##### [11.4.8 如何查询集合中的文档?](11.MongoDB篇/11.4.8%20%E5%A6%82%E4%BD%95%E6%9F%A5%E8%AF%A2%E9%9B%86%E5%90%88%E4%B8%AD%E7%9A%84%E6%96%87%E6%A1%A3%EF%BC%9F.md)

##### [11.4.9 用什么方法可以格式化输出结果?](11.MongoDB篇/11.4.9%20%E7%94%A8%E4%BB%80%E4%B9%88%E6%96%B9%E6%B3%95%E5%8F%AF%E4%BB%A5%E6%A0%BC%E5%BC%8F%E5%8C%96%E8%BE%93%E5%87%BA%E7%BB%93%E6%9E%9C%EF%BC%9F.md)

##### 11.5.0 如何使用"AND"或"OR"条件循环查询集合中的文档?

##### [11.5.1 在MongoDB中如何更新数据?](11.MongoDB篇/11.5.1%20%E5%9C%A8MongoDB%E4%B8%AD%E5%A6%82%E4%BD%95%E6%9B%B4%E6%96%B0%E6%95%B0%E6%8D%AE%EF%BC%9F.md)

##### [11.5.2 如何删除文档?](11.MongoDB篇/11.5.2%20%E5%A6%82%E4%BD%95%E5%88%A0%E9%99%A4%E6%96%87%E6%A1%A3%EF%BC%9F.md)

##### [11.5.3 在MongoDB中如何排序?](11.MongoDB篇/11.5.3%20%E5%9C%A8MongoDB%E4%B8%AD%E5%A6%82%E4%BD%95%E6%8E%92%E5%BA%8F%EF%BC%9F.md)

##### [11.5.4 什么是聚合?](11.MongoDB篇/11.5.4%20%E4%BB%80%E4%B9%88%E6%98%AF%E8%81%9A%E5%90%88%EF%BC%9F.md)

##### [11.5.5 在MongoDB中什么是副本集?](11.MongoDB篇/11.5.5%20%E5%9C%A8MongoDB%E4%B8%AD%E4%BB%80%E4%B9%88%E6%98%AF%E5%89%AF%E6%9C%AC%E9%9B%86%EF%BC%9F.md)

##### 11.5.6 Mongodb存储特性与内部原理?


Zookeeper篇

---
##### [12.1.0 zookeeper是什么?](12.Zookeeper篇/12.1.0%20zookeeper%E6%98%AF%E4%BB%80%E4%B9%88%EF%BC%9F.md)

##### [12.1.1 zookeeper提供了什么?](12.Zookeeper篇/12.1.1%20zookeeper%E6%8F%90%E4%BE%9B%E4%BA%86%E4%BB%80%E4%B9%88%EF%BC%9F.md)

##### [12.1.2 zookeeper文件系统](12.Zookeeper篇/12.1.2%20zookeeper%E6%96%87%E4%BB%B6%E7%B3%BB%E7%BB%9F.md)

##### [12.1.3 zookeeper的四种类型的znode](https://github.com/0voice/interview_internal_reference/blob/master/12.1.3%20zookeeper%E7%9A%84%E5%9B%9B%E7%A7%8D%E7%B1%BB%E5%9E%8B%E7%9A%84znode.md)

##### [12.1.4 zookeeper通知机制](12.Zookeeper篇/12.1.4%20zookeeper%E9%80%9A%E7%9F%A5%E6%9C%BA%E5%88%B6.md)

##### [12.1.5 zookeeper有哪些应用场景?](12.Zookeeper篇/12.1.5%20zookeeper%E6%9C%89%E5%93%AA%E4%BA%9B%E5%BA%94%E7%94%A8%E5%9C%BA%E6%99%AF%EF%BC%9F.md)

##### [12.1.6 zk的命名服务](12.Zookeeper篇/12.1.6%20zk%E7%9A%84%E5%91%BD%E5%90%8D%E6%9C%8D%E5%8A%A1.md)

##### [12.1.7 zk的配置管理服务](12.Zookeeper篇/12.1.7%20zk%E7%9A%84%E9%85%8D%E7%BD%AE%E7%AE%A1%E7%90%86%E6%9C%8D%E5%8A%A1.md)

##### [12.1.8 zk的集群管理](12.Zookeeper篇/12.1.8%20zk%E7%9A%84%E9%9B%86%E7%BE%A4%E7%AE%A1%E7%90%86.md)

##### [12.1.9 zk的分布式锁](12.Zookeeper篇/12.1.9%20zk%E7%9A%84%E5%88%86%E5%B8%83%E5%BC%8F%E9%94%81.md)

##### [12.2.0 zk队列管理](12.Zookeeper篇/12.2.0%20zk%E9%98%9F%E5%88%97%E7%AE%A1%E7%90%86.md)

##### [12.2.1 zk数据复制](12.Zookeeper篇/12.2.1%20zk%E6%95%B0%E6%8D%AE%E5%A4%8D%E5%88%B6.md)

##### [12.2.2 zk的工作原理](12.Zookeeper篇/12.2.2%20zk%E7%9A%84%E5%B7%A5%E4%BD%9C%E5%8E%9F%E7%90%86.md)

##### [12.2.3 zk是如何保证事物的顺序一致性](12.Zookeeper篇/12.2.3%20zk%E6%98%AF%E5%A6%82%E4%BD%95%E4%BF%9D%E8%AF%81%E4%BA%8B%E7%89%A9%E7%9A%84%E9%A1%BA%E5%BA%8F%E4%B8%80%E8%87%B4%E6%80%A7.md)

##### [12.2.4 zk集群下server工作状态](12.Zookeeper篇/12.2.4%20zk%E9%9B%86%E7%BE%A4%E4%B8%8Bserver%E5%B7%A5%E4%BD%9C%E7%8A%B6%E6%80%81.md)

##### [12.2.5 zk是如何选举Leader的?](12.Zookeeper篇/12.2.5%20zk%E6%98%AF%E5%A6%82%E4%BD%95%E9%80%89%E4%B8%BELeader%E7%9A%84%EF%BC%9F.md)

##### [12.2.6 zk同步流程](12.Zookeeper篇/12.2.6%20zk%E5%90%8C%E6%AD%A5%E6%B5%81%E7%A8%8B.md)

##### [12.2.7 分布式通知和协调](12.Zookeeper篇/12.2.7%20%E5%88%86%E5%B8%83%E5%BC%8F%E9%80%9A%E7%9F%A5%E5%92%8C%E5%8D%8F%E8%B0%83.md)

##### [12.2.8 zk的session机制](12.Zookeeper篇/12.2.8%20zk的session机制.md)


其他中大厂700道精选面试题

---
##### [13.1.0 多重继承如何解决?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#307-%E5%A4%9A%E9%87%8D%E7%BB%A7%E6%89%BF%E5%A6%82%E4%BD%95%E8%A7%A3%E5%86%B3)

##### [13.1.1 派生类与虚函数概述](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#308-%E6%B4%BE%E7%94%9F%E7%B1%BB%E4%B8%8E%E8%99%9A%E5%87%BD%E6%95%B0%E6%A6%82%E8%BF%B0)

##### [13.1.2 为什么析构函数要定义为虚函数?哪些函数不能是虚函数?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#309-%E4%B8%BA%E4%BB%80%E4%B9%88%E6%9E%90%E6%9E%84%E5%87%BD%E6%95%B0%E8%A6%81%E5%AE%9A%E4%B9%89%E4%B8%BA%E8%99%9A%E5%87%BD%E6%95%B0%E5%93%AA%E4%BA%9B%E5%87%BD%E6%95%B0%E4%B8%8D%E8%83%BD%E6%98%AF%E8%99%9A%E5%87%BD%E6%95%B0)

##### [13.1.3 析构函数可以抛出异常吗?为什么不能抛出异常?除了资源泄露,还有其他需考虑的因素吗?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#310-%E6%9E%90%E6%9E%84%E5%87%BD%E6%95%B0%E5%8F%AF%E4%BB%A5%E6%8A%9B%E5%87%BA%E5%BC%82%E5%B8%B8%E5%90%97%E4%B8%BA%E4%BB%80%E4%B9%88%E4%B8%8D%E8%83%BD%E6%8A%9B%E5%87%BA%E5%BC%82%E5%B8%B8%E9%99%A4%E4%BA%86%E8%B5%84%E6%BA%90%E6%B3%84%E9%9C%B2%E8%BF%98%E6%9C%89%E5%85%B6%E4%BB%96%E9%9C%80%E8%80%83%E8%99%91%E7%9A%84%E5%9B%A0%E7%B4%A0%E5%90%97)

##### [13.1.4 动态链接库的两种使用方法及特点?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#311%E5%8A%A8%E6%80%81%E9%93%BE%E6%8E%A5%E5%BA%93%E7%9A%84%E4%B8%A4%E7%A7%8D%E4%BD%BF%E7%94%A8%E6%96%B9%E6%B3%95%E5%8F%8A%E7%89%B9%E7%82%B9)

##### [13.1.5 STL各类容器(3个顺序+4个关联+1个无序关联)的实现原理及使用情形](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#312-stl%E5%90%84%E7%B1%BB%E5%AE%B9%E5%99%A83%E4%B8%AA%E9%A1%BA%E5%BA%8F4%E4%B8%AA%E5%85%B3%E8%81%941%E4%B8%AA%E6%97%A0%E5%BA%8F%E5%85%B3%E8%81%94%E7%9A%84%E5%AE%9E%E7%8E%B0%E5%8E%9F%E7%90%86%E5%8F%8A%E4%BD%BF%E7%94%A8%E6%83%85%E5%BD%A2)

##### [13.1.6 什么是STL?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#313%E4%BB%80%E4%B9%88%E6%98%AFstl)

##### [13.1.7 什么是智能指针?底层实现?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#314-%E4%BB%80%E4%B9%88%E6%98%AF%E6%99%BA%E8%83%BD%E6%8C%87%E9%92%88%E5%BA%95%E5%B1%82%E5%AE%9E%E7%8E%B0))

##### [13.1.8 多进程与多线程之间的区别?(最好要了解透彻)](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#315-%E5%A4%9A%E8%BF%9B%E7%A8%8B%E4%B8%8E%E5%A4%9A%E7%BA%BF%E7%A8%8B%E4%B9%8B%E9%97%B4%E7%9A%84%E5%8C%BA%E5%88%AB%E6%9C%80%E5%A5%BD%E8%A6%81%E4%BA%86%E8%A7%A3%E9%80%8F%E5%BD%BB)

##### 13.1.9 [什么是进程池和线程池?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#316-%E4%BB%80%E4%B9%88%E6%98%AF%E8%BF%9B%E7%A8%8B%E6%B1%A0%E5%92%8C%E7%BA%BF%E7%A8%8B%E6%B1%A0)

##### [13.2.0 进程间的通信方式有哪些?如何实现的?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#317%E8%BF%9B%E7%A8%8B%E9%97%B4%E7%9A%84%E9%80%9A%E4%BF%A1%E6%96%B9%E5%BC%8F%E6%9C%89%E5%93%AA%E4%BA%9B%E5%A6%82%E4%BD%95%E5%AE%9E%E7%8E%B0%E7%9A%84)

##### [13.2.1 简述inux中的同步与异步机制?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#318-%E7%AE%80%E8%BF%B0inux%E4%B8%AD%E7%9A%84%E5%90%8C%E6%AD%A5%E4%B8%8E%E5%BC%82%E6%AD%A5%E6%9C%BA%E5%88%B6)

##### [13.2.2 简述阻塞与非阻塞?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#319%E7%AE%80%E8%BF%B0%E9%98%BB%E5%A1%9E%E4%B8%8E%E9%9D%9E%E9%98%BB%E5%A1%9E)

##### [13.2.3 简述Linux中的5种I/O模式?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#320%E7%AE%80%E8%BF%B0linux%E4%B8%AD%E7%9A%845%E7%A7%8Dio%E6%A8%A1%E5%BC%8F)

##### [13.2.4 什么是死锁?四个死锁的条件?避免死锁的方法?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#321-%E4%BB%80%E4%B9%88%E6%98%AF%E6%AD%BB%E9%94%81%E5%9B%9B%E4%B8%AA%E6%AD%BB%E9%94%81%E7%9A%84%E6%9D%A1%E4%BB%B6%E9%81%BF%E5%85%8D%E6%AD%BB%E9%94%81%E7%9A%84%E6%96%B9%E6%B3%95)

##### [13.2.5 Linux的任务调度机制是什么?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#322-linux%E7%9A%84%E4%BB%BB%E5%8A%A1%E8%B0%83%E5%BA%A6%E6%9C%BA%E5%88%B6%E6%98%AF%E4%BB%80%E4%B9%88)

##### [13.2.6 标准库函数与系统调用的区别?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#323%E6%A0%87%E5%87%86%E5%BA%93%E5%87%BD%E6%95%B0%E4%B8%8E%E7%B3%BB%E7%BB%9F%E8%B0%83%E7%94%A8%E7%9A%84%E5%8C%BA%E5%88%AB)

##### [13.2.7 分别简述三次握手与四次挥手的过程?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#324-%E5%88%86%E5%88%AB%E7%AE%80%E8%BF%B0%E4%B8%89%E6%AC%A1%E6%8F%A1%E6%89%8B%E4%B8%8E%E5%9B%9B%E6%AC%A1%E6%8C%A5%E6%89%8B%E7%9A%84%E8%BF%87%E7%A8%8B)

##### [13.2.8 tcp和udp之间的区别?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#325-tcp%E5%92%8Cudp%E4%B9%8B%E9%97%B4%E7%9A%84%E5%8C%BA%E5%88%AB)

##### [13.2.9 epoll有哪些触发模式?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#327-epoll%E6%9C%89%E5%93%AA%E4%BA%9B%E8%A7%A6%E5%8F%91%E6%A8%A1%E5%BC%8F)

##### [13.3.1 C和C++的区别](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#329c%E5%92%8Cc%E7%9A%84%E5%8C%BA%E5%88%AB)

##### [13.3.2 C++中指针和引用的区别](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#330c%E4%B8%AD%E6%8C%87%E9%92%88%E5%92%8C%E5%BC%95%E7%94%A8%E7%9A%84%E5%8C%BA%E5%88%AB)

##### [13.3.3 结构体struct和共同体union(联合)的区别](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#331%E7%BB%93%E6%9E%84%E4%BD%93struct%E5%92%8C%E5%85%B1%E5%90%8C%E4%BD%93union%E8%81%94%E5%90%88%E7%9A%84%E5%8C%BA%E5%88%AB)

##### [13.3.4 #define和const的区别](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#332define%E5%92%8Cconst%E7%9A%84%E5%8C%BA%E5%88%AB)

##### [13.3.5 重载overload,覆盖(重写)override,隐藏(重定义)overwrite,这三者之间的区别](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#333%E9%87%8D%E8%BD%BDoverload%E8%A6%86%E7%9B%96%E9%87%8D%E5%86%99override%E9%9A%90%E8%97%8F%E9%87%8D%E5%AE%9A%E4%B9%89overwrite%E8%BF%99%E4%B8%89%E8%80%85%E4%B9%8B%E9%97%B4%E7%9A%84%E5%8C%BA%E5%88%AB)

##### [13.3.6 new、delete、malloc、free之间的关系](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#334newdeletemallocfree%E4%B9%8B%E9%97%B4%E7%9A%84%E5%85%B3%E7%B3%BB)

##### [13.3.7 delete和delete[]的区别](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#335delete%E5%92%8Cdelete%E7%9A%84%E5%8C%BA%E5%88%AB)

##### [13.3.8 虚函数、纯虚函数](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#336%E8%99%9A%E5%87%BD%E6%95%B0%E7%BA%AF%E8%99%9A%E5%87%BD%E6%95%B0)

##### [13.3.9 STL库用过吗?常见的STL容器有哪些?算法用过几个?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#337stl%E5%BA%93%E7%94%A8%E8%BF%87%E5%90%97%E5%B8%B8%E8%A7%81%E7%9A%84stl%E5%AE%B9%E5%99%A8%E6%9C%89%E5%93%AA%E4%BA%9B%E7%AE%97%E6%B3%95%E7%94%A8%E8%BF%87%E5%87%A0%E4%B8%AA)

##### [13.4.1 const知道吗?解释一下其作用](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#338const%E7%9F%A5%E9%81%93%E5%90%97%E8%A7%A3%E9%87%8A%E4%B8%80%E4%B8%8B%E5%85%B6%E4%BD%9C%E7%94%A8)

##### [13.4.2 虚函数是怎么实现的](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#339%E8%99%9A%E5%87%BD%E6%95%B0%E6%98%AF%E6%80%8E%E4%B9%88%E5%AE%9E%E7%8E%B0%E7%9A%84)

##### [13.4.3 堆和栈的区别](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#340%E5%A0%86%E5%92%8C%E6%A0%88%E7%9A%84%E5%8C%BA%E5%88%AB)

##### [13.4.4 关键字static的作用](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#341%E5%85%B3%E9%94%AE%E5%AD%97static%E7%9A%84%E4%BD%9C%E7%94%A8)

##### [13.4.5 STL中map和set的原理(关联式容器)](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#342stl%E4%B8%ADmap%E5%92%8Cset%E7%9A%84%E5%8E%9F%E7%90%86%E5%85%B3%E8%81%94%E5%BC%8F%E5%AE%B9%E5%99%A8)

##### [13.4.6 #include #include "file.h" 的区别](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#343includefileh-include-fileh-%E7%9A%84%E5%8C%BA%E5%88%AB)

##### [13.4.7 什么是内存泄漏?面对内存泄漏和指针越界,你有哪些方法?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#344%E4%BB%80%E4%B9%88%E6%98%AF%E5%86%85%E5%AD%98%E6%B3%84%E6%BC%8F%E9%9D%A2%E5%AF%B9%E5%86%85%E5%AD%98%E6%B3%84%E6%BC%8F%E5%92%8C%E6%8C%87%E9%92%88%E8%B6%8A%E7%95%8C%E4%BD%A0%E6%9C%89%E5%93%AA%E4%BA%9B%E6%96%B9%E6%B3%95)

##### [13.4.8 定义和声明的区别](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#345%E5%AE%9A%E4%B9%89%E5%92%8C%E5%A3%B0%E6%98%8E%E7%9A%84%E5%8C%BA%E5%88%AB)

##### [13.4.9 C++文件编译与执行的四个阶段](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#346c%E6%96%87%E4%BB%B6%E7%BC%96%E8%AF%91%E4%B8%8E%E6%89%A7%E8%A1%8C%E7%9A%84%E5%9B%9B%E4%B8%AA%E9%98%B6%E6%AE%B5)

##### [13.5.1 STL中unordered_map和map的区别](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#347stl%E4%B8%ADunordered_map%E5%92%8Cmap%E7%9A%84%E5%8C%BA%E5%88%AB)

##### [13.5.2 C++的内存管理](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#348c%E7%9A%84%E5%86%85%E5%AD%98%E7%AE%A1%E7%90%86)

##### [13.5.3 构造函数为什么一般不定义为虚函数?而析构函数一般写成虚函数的原因 ?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#349%E6%9E%84%E9%80%A0%E5%87%BD%E6%95%B0%E4%B8%BA%E4%BB%80%E4%B9%88%E4%B8%80%E8%88%AC%E4%B8%8D%E5%AE%9A%E4%B9%89%E4%B8%BA%E8%99%9A%E5%87%BD%E6%95%B0%E8%80%8C%E6%9E%90%E6%9E%84%E5%87%BD%E6%95%B0%E4%B8%80%E8%88%AC%E5%86%99%E6%88%90%E8%99%9A%E5%87%BD%E6%95%B0%E7%9A%84%E5%8E%9F%E5%9B%A0-)

##### [13.5.4 静态绑定和动态绑定的介绍](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#350%E9%9D%99%E6%80%81%E7%BB%91%E5%AE%9A%E5%92%8C%E5%8A%A8%E6%80%81%E7%BB%91%E5%AE%9A%E7%9A%84%E4%BB%8B%E7%BB%8D)

##### [13.5.5 引用是否能实现动态绑定,为什么引用可以实现](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#351%E5%BC%95%E7%94%A8%E6%98%AF%E5%90%A6%E8%83%BD%E5%AE%9E%E7%8E%B0%E5%8A%A8%E6%80%81%E7%BB%91%E5%AE%9A%E4%B8%BA%E4%BB%80%E4%B9%88%E5%BC%95%E7%94%A8%E5%8F%AF%E4%BB%A5%E5%AE%9E%E7%8E%B0)

##### [13.5.6 深拷贝和浅拷贝的区别](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#352%E6%B7%B1%E6%8B%B7%E8%B4%9D%E5%92%8C%E6%B5%85%E6%8B%B7%E8%B4%9D%E7%9A%84%E5%8C%BA%E5%88%AB)

##### [13.5.7 什么情况下会调用拷贝构造函数(三种情况)](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#353%E4%BB%80%E4%B9%88%E6%83%85%E5%86%B5%E4%B8%8B%E4%BC%9A%E8%B0%83%E7%94%A8%E6%8B%B7%E8%B4%9D%E6%9E%84%E9%80%A0%E5%87%BD%E6%95%B0%E4%B8%89%E7%A7%8D%E6%83%85%E5%86%B5)

##### [13.5.8 C++的四种强制转换](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#354c%E7%9A%84%E5%9B%9B%E7%A7%8D%E5%BC%BA%E5%88%B6%E8%BD%AC%E6%8D%A2)

##### [13.5.9 调试程序的方法](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#355%E8%B0%83%E8%AF%95%E7%A8%8B%E5%BA%8F%E7%9A%84%E6%96%B9%E6%B3%95)

##### [13.6.1 extern“C”作用](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#356externc%E4%BD%9C%E7%94%A8)

##### [13.6.2 typdef和define区别](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#357typdef%E5%92%8Cdefine%E5%8C%BA%E5%88%AB)

##### [13.6.3 引用作为函数参数以及返回值的好处](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#358%E5%BC%95%E7%94%A8%E4%BD%9C%E4%B8%BA%E5%87%BD%E6%95%B0%E5%8F%82%E6%95%B0%E4%BB%A5%E5%8F%8A%E8%BF%94%E5%9B%9E%E5%80%BC%E7%9A%84%E5%A5%BD%E5%A4%84)

##### [13.6.4 纯虚函数](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#359%E7%BA%AF%E8%99%9A%E5%87%BD%E6%95%B0)

##### [13.6.5 什么是野指针](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#360%E4%BB%80%E4%B9%88%E6%98%AF%E9%87%8E%E6%8C%87%E9%92%88)

##### [13.6.6 线程安全和线程不安全](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#361%E7%BA%BF%E7%A8%8B%E5%AE%89%E5%85%A8%E5%92%8C%E7%BA%BF%E7%A8%8B%E4%B8%8D%E5%AE%89%E5%85%A8)

##### [13.6.7 C++中内存泄漏的几种情况](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#362c%E4%B8%AD%E5%86%85%E5%AD%98%E6%B3%84%E6%BC%8F%E7%9A%84%E5%87%A0%E7%A7%8D%E6%83%85%E5%86%B5)

##### [13.6.8 栈溢出的原因以及解决方法](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#363%E6%A0%88%E6%BA%A2%E5%87%BA%E7%9A%84%E5%8E%9F%E5%9B%A0%E4%BB%A5%E5%8F%8A%E8%A7%A3%E5%86%B3%E6%96%B9%E6%B3%95)

##### [13.6.9 C++标准库vector以及迭代器](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#364c%E6%A0%87%E5%87%86%E5%BA%93vector%E4%BB%A5%E5%8F%8A%E8%BF%AD%E4%BB%A3%E5%99%A8)

##### [13.7.1 C++中vector和list的区别](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#365c%E4%B8%ADvector%E5%92%8Clist%E7%9A%84%E5%8C%BA%E5%88%AB)

##### [13.7.2 C++中的基本数据类型及派生类型](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#366c%E4%B8%AD%E7%9A%84%E5%9F%BA%E6%9C%AC%E6%95%B0%E6%8D%AE%E7%B1%BB%E5%9E%8B%E5%8F%8A%E6%B4%BE%E7%94%9F%E7%B1%BB%E5%9E%8B)

##### [13.7.3 友元函数和友元类](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#367%E5%8F%8B%E5%85%83%E5%87%BD%E6%95%B0%E5%92%8C%E5%8F%8B%E5%85%83%E7%B1%BB)

##### [13.7.4 c++函数库中一些实用的函数](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#368c%E5%87%BD%E6%95%B0%E5%BA%93%E4%B8%AD%E4%B8%80%E4%BA%9B%E5%AE%9E%E7%94%A8%E7%9A%84%E5%87%BD%E6%95%B0)

##### [13.7.5 线程的基本概念、线程的基本状态及状态之间的关系?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#369%E7%BA%BF%E7%A8%8B%E7%9A%84%E5%9F%BA%E6%9C%AC%E6%A6%82%E5%BF%B5%E7%BA%BF%E7%A8%8B%E7%9A%84%E5%9F%BA%E6%9C%AC%E7%8A%B6%E6%80%81%E5%8F%8A%E7%8A%B6%E6%80%81%E4%B9%8B%E9%97%B4%E7%9A%84%E5%85%B3%E7%B3%BB)

##### [13.7.6 线程与进程的区别?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#370%E7%BA%BF%E7%A8%8B%E4%B8%8E%E8%BF%9B%E7%A8%8B%E7%9A%84%E5%8C%BA%E5%88%AB)

##### [13.7.7 C++多线程有几种实现方法,都是什么?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#371c%E5%A4%9A%E7%BA%BF%E7%A8%8B%E6%9C%89%E5%87%A0%E7%A7%8D%E5%AE%9E%E7%8E%B0%E6%96%B9%E6%B3%95%E9%83%BD%E6%98%AF%E4%BB%80%E4%B9%88)

##### [13.7.8 C和C++的区别](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#373c%E5%92%8Cc%E7%9A%84%E5%8C%BA%E5%88%AB)

##### [13.7.9 封装、继承、多态](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#374%E5%B0%81%E8%A3%85%E7%BB%A7%E6%89%BF%E5%A4%9A%E6%80%81)

##### [13.8.1 虚函数的作用及其实现原理](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#375%E8%99%9A%E5%87%BD%E6%95%B0%E7%9A%84%E4%BD%9C%E7%94%A8%E5%8F%8A%E5%85%B6%E5%AE%9E%E7%8E%B0%E5%8E%9F%E7%90%86)

##### [13.8.2 深拷贝和浅拷贝(值拷贝和位拷贝)](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#376%E6%B7%B1%E6%8B%B7%E8%B4%9D%E5%92%8C%E6%B5%85%E6%8B%B7%E8%B4%9D%E5%80%BC%E6%8B%B7%E8%B4%9D%E5%92%8C%E4%BD%8D%E6%8B%B7%E8%B4%9D)

##### [13.8.3 虚函数、纯虚函数怎么实现](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#377%E8%99%9A%E5%87%BD%E6%95%B0%E7%BA%AF%E8%99%9A%E5%87%BD%E6%95%B0%E6%80%8E%E4%B9%88%E5%AE%9E%E7%8E%B0)

##### [13.8.4 为什么要有纯虚函数](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#378%E4%B8%BA%E4%BB%80%E4%B9%88%E8%A6%81%E6%9C%89%E7%BA%AF%E8%99%9A%E5%87%BD%E6%95%B0)

##### [13.8.5 纯虚函数](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#379%E7%BA%AF%E8%99%9A%E5%87%BD%E6%95%B0)

##### [13.8.6 为什么要有虚析构函数](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#380%E4%B8%BA%E4%BB%80%E4%B9%88%E8%A6%81%E6%9C%89%E8%99%9A%E6%9E%90%E6%9E%84%E5%87%BD%E6%95%B0)

##### [13.8.7 构造函数能不能是虚函数](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#381%E6%9E%84%E9%80%A0%E5%87%BD%E6%95%B0%E8%83%BD%E4%B8%8D%E8%83%BD%E6%98%AF%E8%99%9A%E5%87%BD%E6%95%B0)

##### [13.8.8 C++里面构造函数能有返回值吗?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#382c%E9%87%8C%E9%9D%A2%E6%9E%84%E9%80%A0%E5%87%BD%E6%95%B0%E8%83%BD%E6%9C%89%E8%BF%94%E5%9B%9E%E5%80%BC%E5%90%97)

##### [13.8.9 构造函数和析构函数能被继承吗?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#383%E6%9E%84%E9%80%A0%E5%87%BD%E6%95%B0%E5%92%8C%E6%9E%90%E6%9E%84%E5%87%BD%E6%95%B0%E8%83%BD%E8%A2%AB%E7%BB%A7%E6%89%BF%E5%90%97)

##### [13.9.1 C++中Overload、Overwrite及Override的区别](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#384c%E4%B8%ADoverloadoverwrite%E5%8F%8Aoverride%E7%9A%84%E5%8C%BA%E5%88%AB)

##### [13.9.2 一个空的class类里有什么](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#385%E4%B8%80%E4%B8%AA%E7%A9%BA%E7%9A%84class%E7%B1%BB%E9%87%8C%E6%9C%89%E4%BB%80%E4%B9%88)

##### [13.9.3 C++中一个空类的大小为什么是1?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#386c%E4%B8%AD%E4%B8%80%E4%B8%AA%E7%A9%BA%E7%B1%BB%E7%9A%84%E5%A4%A7%E5%B0%8F%E4%B8%BA%E4%BB%80%E4%B9%88%E6%98%AF1)

##### [13.9.4 一个结构体中有一个int,一个char,一个static int,问这个结构体占多少内存?(涉及到内存对齐机制)](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#387%E4%B8%80%E4%B8%AA%E7%BB%93%E6%9E%84%E4%BD%93%E4%B8%AD%E6%9C%89%E4%B8%80%E4%B8%AAint%E4%B8%80%E4%B8%AAchar%E4%B8%80%E4%B8%AAstatic-int%E9%97%AE%E8%BF%99%E4%B8%AA%E7%BB%93%E6%9E%84%E4%BD%93%E5%8D%A0%E5%A4%9A%E5%B0%91%E5%86%85%E5%AD%98%E6%B6%89%E5%8F%8A%E5%88%B0%E5%86%85%E5%AD%98%E5%AF%B9%E9%BD%90%E6%9C%BA%E5%88%B6)

##### [13.9.5 结构体与联合体的区别](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#388%E7%BB%93%E6%9E%84%E4%BD%93%E4%B8%8E%E8%81%94%E5%90%88%E4%BD%93%E7%9A%84%E5%8C%BA%E5%88%AB)

##### [13.9.6 函数与宏的差别](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#389%E5%87%BD%E6%95%B0%E4%B8%8E%E5%AE%8F%E7%9A%84%E5%B7%AE%E5%88%AB)

##### [13.9.7 宏函数和inline函数的异同点](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#390%E5%AE%8F%E5%87%BD%E6%95%B0%E5%92%8Cinline%E5%87%BD%E6%95%B0%E7%9A%84%E5%BC%82%E5%90%8C%E7%82%B9)

##### [13.9.8 define 和 typedef 区别](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#391define-%E5%92%8C-typedef-%E5%8C%BA%E5%88%AB)

##### [13.9.9 标准C++中的include “” 与<>的区别](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#392%E6%A0%87%E5%87%86c%E4%B8%AD%E7%9A%84include--%E4%B8%8E%E7%9A%84%E5%8C%BA%E5%88%AB)

##### [14.1.1 C++的内存管理机制](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#393c%E7%9A%84%E5%86%85%E5%AD%98%E7%AE%A1%E7%90%86%E6%9C%BA%E5%88%B6)

##### [14.1.2 C语言中的malloc/free和C++中的new/delete的区别和联系](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#394c%E8%AF%AD%E8%A8%80%E4%B8%AD%E7%9A%84mallocfree%E5%92%8Cc%E4%B8%AD%E7%9A%84newdelete%E7%9A%84%E5%8C%BA%E5%88%AB%E5%92%8C%E8%81%94%E7%B3%BB)

##### [14.1.3 迭代和递归区别](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#395%E8%BF%AD%E4%BB%A3%E5%92%8C%E9%80%92%E5%BD%92%E5%8C%BA%E5%88%AB)

##### [14.1.4 不可操作的操作符](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#396%E4%B8%8D%E5%8F%AF%E6%93%8D%E4%BD%9C%E7%9A%84%E6%93%8D%E4%BD%9C%E7%AC%A6)

##### [14.1.5 C++关键字mutable作用](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#397c%E5%85%B3%E9%94%AE%E5%AD%97mutable%E4%BD%9C%E7%94%A8)

##### [14.1.6 引用与指针有什么区别?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#398%E5%BC%95%E7%94%A8%E4%B8%8E%E6%8C%87%E9%92%88%E6%9C%89%E4%BB%80%E4%B9%88%E5%8C%BA%E5%88%AB)

##### [14.1.7 什么是黑盒测试和白盒测试?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#399%E4%BB%80%E4%B9%88%E6%98%AF%E9%BB%91%E7%9B%92%E6%B5%8B%E8%AF%95%E5%92%8C%E7%99%BD%E7%9B%92%E6%B5%8B%E8%AF%95)

##### [14.1.8 你知道的类模版有哪些](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#400%E4%BD%A0%E7%9F%A5%E9%81%93%E7%9A%84%E7%B1%BB%E6%A8%A1%E7%89%88%E6%9C%89%E5%93%AA%E4%BA%9B)

##### [14.1.9 new可以搭配free吗,为什么?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#401new%E5%8F%AF%E4%BB%A5%E6%90%AD%E9%85%8Dfree%E5%90%97%E4%B8%BA%E4%BB%80%E4%B9%88)

##### [14.2.1 怎么查看内存泄漏](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#402%E6%80%8E%E4%B9%88%E6%9F%A5%E7%9C%8B%E5%86%85%E5%AD%98%E6%B3%84%E6%BC%8F)

##### [14.2.2 什么是内存溢出](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#403%E4%BB%80%E4%B9%88%E6%98%AF%E5%86%85%E5%AD%98%E6%BA%A2%E5%87%BA)

##### [14.2.3 内存溢出的解决方案](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#404%E5%86%85%E5%AD%98%E6%BA%A2%E5%87%BA%E7%9A%84%E8%A7%A3%E5%86%B3%E6%96%B9%E6%A1%88)

##### [14.2.4 函数指针与指针函数分别是什么](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#405%E5%87%BD%E6%95%B0%E6%8C%87%E9%92%88%E4%B8%8E%E6%8C%87%E9%92%88%E5%87%BD%E6%95%B0%E5%88%86%E5%88%AB%E6%98%AF%E4%BB%80%E4%B9%88)

##### [14.2.5 C++11新特性了解吗](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#406c11%E6%96%B0%E7%89%B9%E6%80%A7%E4%BA%86%E8%A7%A3%E5%90%97)

##### [14.2.6 接口和抽象类的区别](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#407%E6%8E%A5%E5%8F%A3%E5%92%8C%E6%8A%BD%E8%B1%A1%E7%B1%BB%E7%9A%84%E5%8C%BA%E5%88%AB)

##### [14.2.7 预编译在做些什么事情?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#408%E9%A2%84%E7%BC%96%E8%AF%91%E5%9C%A8%E5%81%9A%E4%BA%9B%E4%BB%80%E4%B9%88%E4%BA%8B%E6%83%85)

##### [14.2.8 动态库和静态库?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#410%E5%8A%A8%E6%80%81%E5%BA%93%E5%92%8C%E9%9D%99%E6%80%81%E5%BA%93)

##### [14.2.9 堆和栈的区别,以及为什么栈效率高](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#411%E5%A0%86%E5%92%8C%E6%A0%88%E7%9A%84%E5%8C%BA%E5%88%AB%E4%BB%A5%E5%8F%8A%E4%B8%BA%E4%BB%80%E4%B9%88%E6%A0%88%E6%95%88%E7%8E%87%E9%AB%98)

##### [14.3.1 函数参数压栈方式为什么是从右到左的?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#412%E5%87%BD%E6%95%B0%E5%8F%82%E6%95%B0%E5%8E%8B%E6%A0%88%E6%96%B9%E5%BC%8F%E4%B8%BA%E4%BB%80%E4%B9%88%E6%98%AF%E4%BB%8E%E5%8F%B3%E5%88%B0%E5%B7%A6%E7%9A%84)

##### [14.3.2 C++中的智能指针](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#413c%E4%B8%AD%E7%9A%84%E6%99%BA%E8%83%BD%E6%8C%87%E9%92%88)

##### [14.3.3 基类里private成员函数可以声明为虚函数吗?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#414%E5%9F%BA%E7%B1%BB%E9%87%8Cprivate%E6%88%90%E5%91%98%E5%87%BD%E6%95%B0%E5%8F%AF%E4%BB%A5%E5%A3%B0%E6%98%8E%E4%B8%BA%E8%99%9A%E5%87%BD%E6%95%B0%E5%90%97)

##### [14.3.4 函数A调用函数B的时候,有什么需要压栈?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#415%E5%87%BD%E6%95%B0a%E8%B0%83%E7%94%A8%E5%87%BD%E6%95%B0b%E7%9A%84%E6%97%B6%E5%80%99%E6%9C%89%E4%BB%80%E4%B9%88%E9%9C%80%E8%A6%81%E5%8E%8B%E6%A0%88)

##### [14.3.5 数组和指针区别?数组和链表呢?双向链表和单向链表?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#416%E6%95%B0%E7%BB%84%E5%92%8C%E6%8C%87%E9%92%88%E5%8C%BA%E5%88%AB%E6%95%B0%E7%BB%84%E5%92%8C%E9%93%BE%E8%A1%A8%E5%91%A2%E5%8F%8C%E5%90%91%E9%93%BE%E8%A1%A8%E5%92%8C%E5%8D%95%E5%90%91%E9%93%BE%E8%A1%A8)

##### [14.3.6 vector底层实现?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#417vector%E5%BA%95%E5%B1%82%E5%AE%9E%E7%8E%B0)

##### [14.3.7 vector与list的区别?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#418vector%E4%B8%8Elist%E7%9A%84%E5%8C%BA%E5%88%AB)

##### [14.3.8 变量的声明和定义有什么区别?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#419%E5%8F%98%E9%87%8F%E7%9A%84%E5%A3%B0%E6%98%8E%E5%92%8C%E5%AE%9A%E4%B9%89%E6%9C%89%E4%BB%80%E4%B9%88%E5%8C%BA%E5%88%AB)

##### [14.3.9 简述#ifdef、#else、#endif和#ifndef的作用](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#420%E7%AE%80%E8%BF%B0ifdefelseendif%E5%92%8Cifndef%E7%9A%84%E4%BD%9C%E7%94%A8)

##### [14.4.1 写出int、bool、float、指针变量与“零值”比较的if语句](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#421%E5%86%99%E5%87%BAintboolfloat%E6%8C%87%E9%92%88%E5%8F%98%E9%87%8F%E4%B8%8E%E9%9B%B6%E5%80%BC%E6%AF%94%E8%BE%83%E7%9A%84if%E8%AF%AD%E5%8F%A5)

##### [14.4.2 结构体可以直接赋值吗?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#422%E7%BB%93%E6%9E%84%E4%BD%93%E5%8F%AF%E4%BB%A5%E7%9B%B4%E6%8E%A5%E8%B5%8B%E5%80%BC%E5%90%97)

##### [14.4.3 sizeof和strlen的区别](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#423sizeof%E5%92%8Cstrlen%E7%9A%84%E5%8C%BA%E5%88%AB)

##### [14.4.4 c语言的关键字static和c++关键字static有什么区别?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#424c%E8%AF%AD%E8%A8%80%E7%9A%84%E5%85%B3%E9%94%AE%E5%AD%97static%E5%92%8Cc%E5%85%B3%E9%94%AE%E5%AD%97static%E6%9C%89%E4%BB%80%E4%B9%88%E5%8C%BA%E5%88%AB)

##### [14.4.5 c语言的malloc和c++中的new有什么区别?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#425c%E8%AF%AD%E8%A8%80%E7%9A%84malloc%E5%92%8Cc%E4%B8%AD%E7%9A%84new%E6%9C%89%E4%BB%80%E4%B9%88%E5%8C%BA%E5%88%AB)

##### [14.4.6 写一个”标准“宏MIN](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#426%E5%86%99%E4%B8%80%E4%B8%AA%E6%A0%87%E5%87%86%E5%AE%8Fmin)

##### [14.4.7 ++i和i++的区别](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#427i%E5%92%8Ci%E7%9A%84%E5%8C%BA%E5%88%AB)

##### [14.4.8 volatile有什么作用](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#428volatile%E6%9C%89%E4%BB%80%E4%B9%88%E4%BD%9C%E7%94%A8)

##### [14.4.9 一个参数可以既是const又是volatile吗](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#429%E4%B8%80%E4%B8%AA%E5%8F%82%E6%95%B0%E5%8F%AF%E4%BB%A5%E6%97%A2%E6%98%AFconst%E5%8F%88%E6%98%AFvolatile%E5%90%97)

##### [14.5.1 a和&a有什么区别?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#430a%E5%92%8Ca%E6%9C%89%E4%BB%80%E4%B9%88%E5%8C%BA%E5%88%AB)

##### [14.5.2 用c编写一个死循环程序](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#431%E7%94%A8c%E7%BC%96%E5%86%99%E4%B8%80%E4%B8%AA%E6%AD%BB%E5%BE%AA%E7%8E%AF%E7%A8%8B%E5%BA%8F)

##### [14.5.3 结构体内存对齐的问题](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#432%E7%BB%93%E6%9E%84%E4%BD%93%E5%86%85%E5%AD%98%E5%AF%B9%E9%BD%90%E7%9A%84%E9%97%AE%E9%A2%98)

##### [14.5.4 全局变量和局部变量有什么区别?是怎么是实现的?操作系统和编译器是怎么知道的?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#433%E5%85%A8%E5%B1%80%E5%8F%98%E9%87%8F%E5%92%8C%E5%B1%80%E9%83%A8%E5%8F%98%E9%87%8F%E6%9C%89%E4%BB%80%E4%B9%88%E5%8C%BA%E5%88%AB%E6%98%AF%E6%80%8E%E4%B9%88%E6%98%AF%E5%AE%9E%E7%8E%B0%E7%9A%84%E6%93%8D%E4%BD%9C%E7%B3%BB%E7%BB%9F%E5%92%8C%E7%BC%96%E8%AF%91%E5%99%A8%E6%98%AF%E6%80%8E%E4%B9%88%E7%9F%A5%E9%81%93%E7%9A%84)

##### [14.5.5 简述c、c++程序编译的内存分配情况](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#434%E7%AE%80%E8%BF%B0cc%E7%A8%8B%E5%BA%8F%E7%BC%96%E8%AF%91%E7%9A%84%E5%86%85%E5%AD%98%E5%88%86%E9%85%8D%E6%83%85%E5%86%B5)

##### [14.5.6 简述strcpy、sprintf、memcpy的区别](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#435%E7%AE%80%E8%BF%B0strcpysprintfmemcpy%E7%9A%84%E5%8C%BA%E5%88%AB)

##### [14.5.7 解析((void()())0)()的含义](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#436%E8%A7%A3%E6%9E%90void0%E7%9A%84%E5%90%AB%E4%B9%89)

##### [14.5.8 c语言的指针和引用和c++的有什么区别?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#437c%E8%AF%AD%E8%A8%80%E7%9A%84%E6%8C%87%E9%92%88%E5%92%8C%E5%BC%95%E7%94%A8%E5%92%8Cc%E7%9A%84%E6%9C%89%E4%BB%80%E4%B9%88%E5%8C%BA%E5%88%AB)

##### [14.5.9 new与malloc的区别](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#438new%E4%B8%8Emalloc%E7%9A%84%E5%8C%BA%E5%88%AB)

##### [14.6.1 malloc/free 为什么还要 new/delete?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#439mallocfree-%E4%B8%BA%E4%BB%80%E4%B9%88%E8%BF%98%E8%A6%81-newdelete)

##### [14.6.2 delete与 delete []区别](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#440delete%E4%B8%8E-delete-%E5%8C%BA%E5%88%AB)

##### [14.6.3 在物理内存为1G的计算机中能否malloc(1.2G)?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#441%E5%9C%A8%E7%89%A9%E7%90%86%E5%86%85%E5%AD%98%E4%B8%BA1g%E7%9A%84%E8%AE%A1%E7%AE%97%E6%9C%BA%E4%B8%AD%E8%83%BD%E5%90%A6malloc12g)

##### [14.6.4 用C写个程序,如何判断一个操作系统是16位还是32位的?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#442%E7%94%A8c%E5%86%99%E4%B8%AA%E7%A8%8B%E5%BA%8F%E5%A6%82%E4%BD%95%E5%88%A4%E6%96%AD%E4%B8%80%E4%B8%AA%E6%93%8D%E4%BD%9C%E7%B3%BB%E7%BB%9F%E6%98%AF16%E4%BD%8D%E8%BF%98%E6%98%AF32%E4%BD%8D%E7%9A%84)

##### [14.6.5 解释下位域,为什么要用位域,位域的好处?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#443%E8%A7%A3%E9%87%8A%E4%B8%8B%E4%BD%8D%E5%9F%9F%E4%B8%BA%E4%BB%80%E4%B9%88%E8%A6%81%E7%94%A8%E4%BD%8D%E5%9F%9F%E4%BD%8D%E5%9F%9F%E7%9A%84%E5%A5%BD%E5%A4%84)

##### [14.6.6 位操作](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#444%E4%BD%8D%E6%93%8D%E4%BD%9C)

##### [14.6.7 在某工程中,要求设置一绝对地址为0x67a9的整型变量的值为0xaa66。编译器是一个纯粹的ANSI编译器。写代码去完成这一任务。](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#445%E5%9C%A8%E6%9F%90%E5%B7%A5%E7%A8%8B%E4%B8%AD%E8%A6%81%E6%B1%82%E8%AE%BE%E7%BD%AE%E4%B8%80%E7%BB%9D%E5%AF%B9%E5%9C%B0%E5%9D%80%E4%B8%BA0x67a9%E7%9A%84%E6%95%B4%E5%9E%8B%E5%8F%98%E9%87%8F%E7%9A%84%E5%80%BC%E4%B8%BA0xaa66%E7%BC%96%E8%AF%91%E5%99%A8%E6%98%AF%E4%B8%80%E4%B8%AA%E7%BA%AF%E7%B2%B9%E7%9A%84ansi%E7%BC%96%E8%AF%91%E5%99%A8%E5%86%99%E4%BB%A3%E7%A0%81%E5%8E%BB%E5%AE%8C%E6%88%90%E8%BF%99%E4%B8%80%E4%BB%BB%E5%8A%A1)

##### [14.6.8 给定一个整型变量a,写两段代码,第一个设置a的bit3,第二个清除a的bit,在以上两个操作中,要保持其它位不变。](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#446%E7%BB%99%E5%AE%9A%E4%B8%80%E4%B8%AA%E6%95%B4%E5%9E%8B%E5%8F%98%E9%87%8Fa%E5%86%99%E4%B8%A4%E6%AE%B5%E4%BB%A3%E7%A0%81%E7%AC%AC%E4%B8%80%E4%B8%AA%E8%AE%BE%E7%BD%AEa%E7%9A%84bit3%E7%AC%AC%E4%BA%8C%E4%B8%AA%E6%B8%85%E9%99%A4a%E7%9A%84bit%E5%9C%A8%E4%BB%A5%E4%B8%8A%E4%B8%A4%E4%B8%AA%E6%93%8D%E4%BD%9C%E4%B8%AD%E8%A6%81%E4%BF%9D%E6%8C%81%E5%85%B6%E5%AE%83%E4%BD%8D%E4%B8%8D%E5%8F%98)

##### [14.6.9 什么是右值引用,跟左值又有什么区别](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#446%E7%BB%99%E5%AE%9A%E4%B8%80%E4%B8%AA%E6%95%B4%E5%9E%8B%E5%8F%98%E9%87%8Fa%E5%86%99%E4%B8%A4%E6%AE%B5%E4%BB%A3%E7%A0%81%E7%AC%AC%E4%B8%80%E4%B8%AA%E8%AE%BE%E7%BD%AEa%E7%9A%84bit3%E7%AC%AC%E4%BA%8C%E4%B8%AA%E6%B8%85%E9%99%A4a%E7%9A%84bit%E5%9C%A8%E4%BB%A5%E4%B8%8A%E4%B8%A4%E4%B8%AA%E6%93%8D%E4%BD%9C%E4%B8%AD%E8%A6%81%E4%BF%9D%E6%8C%81%E5%85%B6%E5%AE%83%E4%BD%8D%E4%B8%8D%E5%8F%98)

##### [14.7.1 判断x=x+1,x+=1,x++哪个效率最高?为什么?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#448%E5%88%A4%E6%96%ADxx1x1x%E5%93%AA%E4%B8%AA%E6%95%88%E7%8E%87%E6%9C%80%E9%AB%98%E4%B8%BA%E4%BB%80%E4%B9%88)

##### [14.7.2 用变量a定义](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#449%E7%94%A8%E5%8F%98%E9%87%8Fa%E5%AE%9A%E4%B9%89)

##### [14.7.3 C语言是强类型的语言,这是什么意思?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#450c%E8%AF%AD%E8%A8%80%E6%98%AF%E5%BC%BA%E7%B1%BB%E5%9E%8B%E7%9A%84%E8%AF%AD%E8%A8%80%E8%BF%99%E6%98%AF%E4%BB%80%E4%B9%88%E6%84%8F%E6%80%9D)

##### [14.7.4 char 与 int之间的转换](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#450c%E8%AF%AD%E8%A8%80%E6%98%AF%E5%BC%BA%E7%B1%BB%E5%9E%8B%E7%9A%84%E8%AF%AD%E8%A8%80%E8%BF%99%E6%98%AF%E4%BB%80%E4%B9%88%E6%84%8F%E6%80%9D)

##### [14.7.5 float(单精度浮点型)和double(双精度浮点型)](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#452float%E5%8D%95%E7%B2%BE%E5%BA%A6%E6%B5%AE%E7%82%B9%E5%9E%8B%E5%92%8Cdouble%E5%8F%8C%E7%B2%BE%E5%BA%A6%E6%B5%AE%E7%82%B9%E5%9E%8B)

##### [14.7.6 字符常量](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#453%E5%AD%97%E7%AC%A6%E5%B8%B8%E9%87%8F)

##### [14.7.7 写出bool 、int、 指针变量与“零值”比较的if语句](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#454%E5%86%99%E5%87%BAbool-int-%E6%8C%87%E9%92%88%E5%8F%98%E9%87%8F%E4%B8%8E%E9%9B%B6%E5%80%BC%E6%AF%94%E8%BE%83%E7%9A%84if%E8%AF%AD%E5%8F%A5)

##### [14.7.8 写出float x 与“零值”比较的if语句。](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#455%E5%86%99%E5%87%BAfloat-x-%E4%B8%8E%E9%9B%B6%E5%80%BC%E6%AF%94%E8%BE%83%E7%9A%84if%E8%AF%AD%E5%8F%A5)

##### [14.7.9 区分 %d, %ld, %lld, %lf, %f](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#456%E5%8C%BA%E5%88%86-d-ld-lld-lf-f)

##### [14.8.1 输出数据问题](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#457%E8%BE%93%E5%87%BA%E6%95%B0%E6%8D%AE%E9%97%AE%E9%A2%98)

##### [14.8.2 嵌入式系统中经常要用到无限循环,你怎么样用C编写死循环](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#458%E5%B5%8C%E5%85%A5%E5%BC%8F%E7%B3%BB%E7%BB%9F%E4%B8%AD%E7%BB%8F%E5%B8%B8%E8%A6%81%E7%94%A8%E5%88%B0%E6%97%A0%E9%99%90%E5%BE%AA%E7%8E%AF%E4%BD%A0%E6%80%8E%E4%B9%88%E6%A0%B7%E7%94%A8c%E7%BC%96%E5%86%99%E6%AD%BB%E5%BE%AA%E7%8E%AF)

##### [14.8.3 惰性计算方法](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#459%E6%83%B0%E6%80%A7%E8%AE%A1%E7%AE%97%E6%96%B9%E6%B3%95)

##### [14.8.4 变量的声明和定义有什么区别](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#460%E5%8F%98%E9%87%8F%E7%9A%84%E5%A3%B0%E6%98%8E%E5%92%8C%E5%AE%9A%E4%B9%89%E6%9C%89%E4%BB%80%E4%B9%88%E5%8C%BA%E5%88%AB)

##### [14.8.5 用预处理指令#define 声明一个常数,用以表明1年中有多少秒(忽略闰年问题)](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#461%E7%94%A8%E9%A2%84%E5%A4%84%E7%90%86%E6%8C%87%E4%BB%A4define-%E5%A3%B0%E6%98%8E%E4%B8%80%E4%B8%AA%E5%B8%B8%E6%95%B0%E7%94%A8%E4%BB%A5%E8%A1%A8%E6%98%8E1%E5%B9%B4%E4%B8%AD%E6%9C%89%E5%A4%9A%E5%B0%91%E7%A7%92%E5%BF%BD%E7%95%A5%E9%97%B0%E5%B9%B4%E9%97%AE%E9%A2%98)

##### [14.8.6 写一个“标准”宏MIN,这个宏输入两个参数并返回较小的一个](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#462%E5%86%99%E4%B8%80%E4%B8%AA%E6%A0%87%E5%87%86%E5%AE%8Fmin%E8%BF%99%E4%B8%AA%E5%AE%8F%E8%BE%93%E5%85%A5%E4%B8%A4%E4%B8%AA%E5%8F%82%E6%95%B0%E5%B9%B6%E8%BF%94%E5%9B%9E%E8%BE%83%E5%B0%8F%E7%9A%84%E4%B8%80%E4%B8%AA)

##### [14.8.7 sizeof和strlen的区别](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#464c%E8%AF%AD%E8%A8%80%E4%B8%AD%E7%9A%84static%E5%92%8Cc%E4%B8%ADstatic%E7%9A%84%E5%8C%BA%E5%88%AB)

##### [14.8.8 c语言中的static和C++中static的区别](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#464c%E8%AF%AD%E8%A8%80%E4%B8%AD%E7%9A%84static%E5%92%8Cc%E4%B8%ADstatic%E7%9A%84%E5%8C%BA%E5%88%AB)

##### [14.8.9 C++函数中值的传递方式有哪几种?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#465c%E5%87%BD%E6%95%B0%E4%B8%AD%E5%80%BC%E7%9A%84%E4%BC%A0%E9%80%92%E6%96%B9%E5%BC%8F%E6%9C%89%E5%93%AA%E5%87%A0%E7%A7%8D)

##### [14.9.1 C++里面是不是所有的动作都是main()引起的?如果不是,请举例。](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#466c%E9%87%8C%E9%9D%A2%E6%98%AF%E4%B8%8D%E6%98%AF%E6%89%80%E6%9C%89%E7%9A%84%E5%8A%A8%E4%BD%9C%E9%83%BD%E6%98%AFmain%E5%BC%95%E8%B5%B7%E7%9A%84%E5%A6%82%E6%9E%9C%E4%B8%8D%E6%98%AF%E8%AF%B7%E4%B8%BE%E4%BE%8B)

##### [14.9.2 谈谈对面向对象的认识](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#467%E8%B0%88%E8%B0%88%E5%AF%B9%E9%9D%A2%E5%90%91%E5%AF%B9%E8%B1%A1%E7%9A%84%E8%AE%A4%E8%AF%86)

##### [14.9.3 谈谈你对编程规范的理解](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#468%E8%B0%88%E8%B0%88%E4%BD%A0%E5%AF%B9%E7%BC%96%E7%A8%8B%E8%A7%84%E8%8C%83%E7%9A%84%E7%90%86%E8%A7%A3)

##### [14.9.4 面向对象的三大特性](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#469%E9%9D%A2%E5%90%91%E5%AF%B9%E8%B1%A1%E7%9A%84%E4%B8%89%E5%A4%A7%E7%89%B9%E6%80%A7)

##### [14.9.5 简述多态的原理](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#470%E7%AE%80%E8%BF%B0%E5%A4%9A%E6%80%81%E7%9A%84%E5%8E%9F%E7%90%86)

##### [14.9.6 多态的作用?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#471%E5%A4%9A%E6%80%81%E7%9A%84%E4%BD%9C%E7%94%A8)

##### [14.9.7 多态,虚函数,纯虚函数](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#472%E5%A4%9A%E6%80%81%E8%99%9A%E5%87%BD%E6%95%B0%E7%BA%AF%E8%99%9A%E5%87%BD%E6%95%B0)

##### [14.9.8 重载(overload)、重写(override,有的书也叫做“覆盖”)、重定义(redefinition)的区别?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#473%E9%87%8D%E8%BD%BDoverload%E9%87%8D%E5%86%99override%E6%9C%89%E7%9A%84%E4%B9%A6%E4%B9%9F%E5%8F%AB%E5%81%9A%E8%A6%86%E7%9B%96%E9%87%8D%E5%AE%9A%E4%B9%89redefinition%E7%9A%84%E5%8C%BA%E5%88%AB)

##### [14.9.9 所有的运算符都能重载吗?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#474%E6%89%80%E6%9C%89%E7%9A%84%E8%BF%90%E7%AE%97%E7%AC%A6%E9%83%BD%E8%83%BD%E9%87%8D%E8%BD%BD%E5%90%97)

##### [15.1.1 用C++设计一个不能继承的类](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#475%E7%94%A8c%E8%AE%BE%E8%AE%A1%E4%B8%80%E4%B8%AA%E4%B8%8D%E8%83%BD%E7%BB%A7%E6%89%BF%E7%9A%84%E7%B1%BB)

##### [15.1.2 构造函数能否为虚函数](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#476%E6%9E%84%E9%80%A0%E5%87%BD%E6%95%B0%E8%83%BD%E5%90%A6%E4%B8%BA%E8%99%9A%E5%87%BD%E6%95%B0)

##### [15.1.3 在C中用const 能定义真正意义上的常量吗?C++中的const呢?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#477%E5%9C%A8c%E4%B8%AD%E7%94%A8const-%E8%83%BD%E5%AE%9A%E4%B9%89%E7%9C%9F%E6%AD%A3%E6%84%8F%E4%B9%89%E4%B8%8A%E7%9A%84%E5%B8%B8%E9%87%8F%E5%90%97c%E4%B8%AD%E7%9A%84const%E5%91%A2)

##### [15.1.4 宏和内联(inline)函数的比较?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#478%E5%AE%8F%E5%92%8C%E5%86%85%E8%81%94inline%E5%87%BD%E6%95%B0%E7%9A%84%E6%AF%94%E8%BE%83)

##### [15.1.5 typedef和define由什么区别](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#479typedef%E5%92%8Cdefine%E7%94%B1%E4%BB%80%E4%B9%88%E5%8C%BA%E5%88%AB)

##### [15.1.6 strcat、strncat、strcpy哪些函数会导致内存溢出?如何改进?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#480strcatstrncatstrcpy%E5%93%AA%E4%BA%9B%E5%87%BD%E6%95%B0%E4%BC%9A%E5%AF%BC%E8%87%B4%E5%86%85%E5%AD%98%E6%BA%A2%E5%87%BA%E5%A6%82%E4%BD%95%E6%94%B9%E8%BF%9B)

##### [15.1.7 简述队列和栈的异同](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#481%E7%AE%80%E8%BF%B0%E9%98%9F%E5%88%97%E5%92%8C%E6%A0%88%E7%9A%84%E5%BC%82%E5%90%8C)

##### [15.1.8 堆和栈的区别?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#482%E5%A0%86%E5%92%8C%E6%A0%88%E7%9A%84%E5%8C%BA%E5%88%AB)

##### [15.1.9 堆和自由存储区的区别?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#483%E5%A0%86%E5%92%8C%E8%87%AA%E7%94%B1%E5%AD%98%E5%82%A8%E5%8C%BA%E7%9A%84%E5%8C%BA%E5%88%AB)

##### [15.2.1 什么是内存泄漏?面对内存泄漏有什么避免方法](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#484%E4%BB%80%E4%B9%88%E6%98%AF%E5%86%85%E5%AD%98%E6%B3%84%E6%BC%8F%E9%9D%A2%E5%AF%B9%E5%86%85%E5%AD%98%E6%B3%84%E6%BC%8F%E6%9C%89%E4%BB%80%E4%B9%88%E9%81%BF%E5%85%8D%E6%96%B9%E6%B3%95)

##### [15.2.2 链表和数组的区别](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#485%E9%93%BE%E8%A1%A8%E5%92%8C%E6%95%B0%E7%BB%84%E7%9A%84%E5%8C%BA%E5%88%AB)

##### [15.2.3 结构与联合有和区别](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#486%E7%BB%93%E6%9E%84%E4%B8%8E%E8%81%94%E5%90%88%E6%9C%89%E5%92%8C%E5%8C%BA%E5%88%AB)

##### [15.2.4 什么是“引用”?申明和使用“引用”要注意哪些问题?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#487%E4%BB%80%E4%B9%88%E6%98%AF%E5%BC%95%E7%94%A8%E7%94%B3%E6%98%8E%E5%92%8C%E4%BD%BF%E7%94%A8%E5%BC%95%E7%94%A8%E8%A6%81%E6%B3%A8%E6%84%8F%E5%93%AA%E4%BA%9B%E9%97%AE%E9%A2%98)

##### [15.2.5 将“引用”作为函数参数有哪些特点?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#488%E5%B0%86%E5%BC%95%E7%94%A8%E4%BD%9C%E4%B8%BA%E5%87%BD%E6%95%B0%E5%8F%82%E6%95%B0%E6%9C%89%E5%93%AA%E4%BA%9B%E7%89%B9%E7%82%B9)

##### [15.2.6 STL标准模板库](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#489stl%E6%A0%87%E5%87%86%E6%A8%A1%E6%9D%BF%E5%BA%93)

##### [15.2.7 陷阱题](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#490%E9%99%B7%E9%98%B1%E9%A2%98)

##### [15.2.8 一个C++源文件从文本到可执行文件经历的过程](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#491%E4%B8%80%E4%B8%AAc%E6%BA%90%E6%96%87%E4%BB%B6%E4%BB%8E%E6%96%87%E6%9C%AC%E5%88%B0%E5%8F%AF%E6%89%A7%E8%A1%8C%E6%96%87%E4%BB%B6%E7%BB%8F%E5%8E%86%E7%9A%84%E8%BF%87%E7%A8%8B)

##### [15.2.9 #include 的顺序以及尖叫括号和双引号的区别](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#492include-%E7%9A%84%E9%A1%BA%E5%BA%8F%E4%BB%A5%E5%8F%8A%E5%B0%96%E5%8F%AB%E6%8B%AC%E5%8F%B7%E5%92%8C%E5%8F%8C%E5%BC%95%E5%8F%B7%E7%9A%84%E5%8C%BA%E5%88%AB)

##### [15.3.1 进程和线程,为什么要有线程](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#493%E8%BF%9B%E7%A8%8B%E5%92%8C%E7%BA%BF%E7%A8%8B%E4%B8%BA%E4%BB%80%E4%B9%88%E8%A6%81%E6%9C%89%E7%BA%BF%E7%A8%8B)

##### [15.3.2 C++11有哪些新特性](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#494c11%E6%9C%89%E5%93%AA%E4%BA%9B%E6%96%B0%E7%89%B9%E6%80%A7)

##### [15.3.3 malloc的原理,brk系统调用干什么的,mmap呢](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#495malloc%E7%9A%84%E5%8E%9F%E7%90%86brk%E7%B3%BB%E7%BB%9F%E8%B0%83%E7%94%A8%E5%B9%B2%E4%BB%80%E4%B9%88%E7%9A%84mmap%E5%91%A2)

##### [15.3.4 C++的内存管理方式,STL的allocator,最新版本默认使用的分配器](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#496c%E7%9A%84%E5%86%85%E5%AD%98%E7%AE%A1%E7%90%86%E6%96%B9%E5%BC%8Fstl%E7%9A%84allocator%E6%9C%80%E6%96%B0%E7%89%88%E6%9C%AC%E9%BB%98%E8%AE%A4%E4%BD%BF%E7%94%A8%E7%9A%84%E5%88%86%E9%85%8D%E5%99%A8)

##### [15.3.5 hash表的实现,包括STL中的哈希桶长度常数。](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#497hash%E8%A1%A8%E7%9A%84%E5%AE%9E%E7%8E%B0%E5%8C%85%E6%8B%ACstl%E4%B8%AD%E7%9A%84%E5%93%88%E5%B8%8C%E6%A1%B6%E9%95%BF%E5%BA%A6%E5%B8%B8%E6%95%B0)

##### [15.3.6 hash表如何rehash,怎么处理其中保存的资源](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#498hash%E8%A1%A8%E5%A6%82%E4%BD%95rehash%E6%80%8E%E4%B9%88%E5%A4%84%E7%90%86%E5%85%B6%E4%B8%AD%E4%BF%9D%E5%AD%98%E7%9A%84%E8%B5%84%E6%BA%90)

##### [15.3.7 Redis的rehash怎么做的,为什么要渐进rehash,渐进rehash怎么实现的](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#499redis%E7%9A%84rehash%E6%80%8E%E4%B9%88%E5%81%9A%E7%9A%84%E4%B8%BA%E4%BB%80%E4%B9%88%E8%A6%81%E6%B8%90%E8%BF%9Brehash%E6%B8%90%E8%BF%9Brehash%E6%80%8E%E4%B9%88%E5%AE%9E%E7%8E%B0%E7%9A%84)

##### [15.3.8 Redis的定时机制怎么实现的,有哪些弊端,你将如何改进这个弊端](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#500redis%E7%9A%84%E5%AE%9A%E6%97%B6%E6%9C%BA%E5%88%B6%E6%80%8E%E4%B9%88%E5%AE%9E%E7%8E%B0%E7%9A%84%E6%9C%89%E5%93%AA%E4%BA%9B%E5%BC%8A%E7%AB%AF%E4%BD%A0%E5%B0%86%E5%A6%82%E4%BD%95%E6%94%B9%E8%BF%9B%E8%BF%99%E4%B8%AA%E5%BC%8A%E7%AB%AF)

##### [15.3.9 Redis是单线程的,为什么这么高效](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#501redis%E6%98%AF%E5%8D%95%E7%BA%BF%E7%A8%8B%E7%9A%84%E4%B8%BA%E4%BB%80%E4%B9%88%E8%BF%99%E4%B9%88%E9%AB%98%E6%95%88))

##### [15.4.1 Redis的数据类型有哪些,底层怎么实现](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#502redis%E7%9A%84%E6%95%B0%E6%8D%AE%E7%B1%BB%E5%9E%8B%E6%9C%89%E5%93%AA%E4%BA%9B%E5%BA%95%E5%B1%82%E6%80%8E%E4%B9%88%E5%AE%9E%E7%8E%B0)

##### [15.4.2 Redis和memcached的区别](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#503redis%E5%92%8Cmemcached%E7%9A%84%E5%8C%BA%E5%88%AB)

##### [15.4.3 TCP的模型,状态转移](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#504tcp%E7%9A%84%E6%A8%A1%E5%9E%8B%E7%8A%B6%E6%80%81%E8%BD%AC%E7%A7%BB)

##### [15.4.4 用过哪些设计模式,单例模式,观察者模式的多线程安全问题](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#505%E7%94%A8%E8%BF%87%E5%93%AA%E4%BA%9B%E8%AE%BE%E8%AE%A1%E6%A8%A1%E5%BC%8F%E5%8D%95%E4%BE%8B%E6%A8%A1%E5%BC%8F%E8%A7%82%E5%AF%9F%E8%80%85%E6%A8%A1%E5%BC%8F%E7%9A%84%E5%A4%9A%E7%BA%BF%E7%A8%8B%E5%AE%89%E5%85%A8%E9%97%AE%E9%A2%98)

##### [15.4.5 用过多线程吗,以前的多线程代码还能怎么优化,线程池的实现](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#506%E7%94%A8%E8%BF%87%E5%A4%9A%E7%BA%BF%E7%A8%8B%E5%90%97%E4%BB%A5%E5%89%8D%E7%9A%84%E5%A4%9A%E7%BA%BF%E7%A8%8B%E4%BB%A3%E7%A0%81%E8%BF%98%E8%83%BD%E6%80%8E%E4%B9%88%E4%BC%98%E5%8C%96%E7%BA%BF%E7%A8%8B%E6%B1%A0%E7%9A%84%E5%AE%9E%E7%8E%B0)

##### [15.4.6 epoll怎么实现的,reactor模型组成](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#507epoll%E6%80%8E%E4%B9%88%E5%AE%9E%E7%8E%B0%E7%9A%84reactor%E6%A8%A1%E5%9E%8B%E7%BB%84%E6%88%90)

##### [15.4.7 线程间的同步方式,最好说出具体的系统调用](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#508%E7%BA%BF%E7%A8%8B%E9%97%B4%E7%9A%84%E5%90%8C%E6%AD%A5%E6%96%B9%E5%BC%8F%E6%9C%80%E5%A5%BD%E8%AF%B4%E5%87%BA%E5%85%B7%E4%BD%93%E7%9A%84%E7%B3%BB%E7%BB%9F%E8%B0%83%E7%94%A8)

##### [15.4.8 哈希表的桶个数为什么是质数,合数有何不妥?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#509%E5%93%88%E5%B8%8C%E8%A1%A8%E7%9A%84%E6%A1%B6%E4%B8%AA%E6%95%B0%E4%B8%BA%E4%BB%80%E4%B9%88%E6%98%AF%E8%B4%A8%E6%95%B0%E5%90%88%E6%95%B0%E6%9C%89%E4%BD%95%E4%B8%8D%E5%A6%A5)

##### [15.4.9 C/C++内存有哪几种类型?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#510cc%E5%86%85%E5%AD%98%E6%9C%89%E5%93%AA%E5%87%A0%E7%A7%8D%E7%B1%BB%E5%9E%8B)

##### [15.5.1 堆和栈的区别?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#511%E5%A0%86%E5%92%8C%E6%A0%88%E7%9A%84%E5%8C%BA%E5%88%AB)

##### [15.5.2 堆和自由存储区的区别?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#512%E5%A0%86%E5%92%8C%E8%87%AA%E7%94%B1%E5%AD%98%E5%82%A8%E5%8C%BA%E7%9A%84%E5%8C%BA%E5%88%AB)

##### [15.5.3 程序编译的过程?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#513%E7%A8%8B%E5%BA%8F%E7%BC%96%E8%AF%91%E7%9A%84%E8%BF%87%E7%A8%8B)

##### [15.5.4 计算机内部如何存储负数和浮点数?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#514%E8%AE%A1%E7%AE%97%E6%9C%BA%E5%86%85%E9%83%A8%E5%A6%82%E4%BD%95%E5%AD%98%E5%82%A8%E8%B4%9F%E6%95%B0%E5%92%8C%E6%B5%AE%E7%82%B9%E6%95%B0)

##### [15.5.5 函数调用的过程?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#515%E5%87%BD%E6%95%B0%E8%B0%83%E7%94%A8%E7%9A%84%E8%BF%87%E7%A8%8B)

##### [15.5.6 左值和右值](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#516%E5%B7%A6%E5%80%BC%E5%92%8C%E5%8F%B3%E5%80%BC)

##### [15.5.7 什么是内存泄漏?面对内存泄漏和指针越界,你有哪些方法?你通常采用哪些方法来避免和减少这类错误?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#517%E4%BB%80%E4%B9%88%E6%98%AF%E5%86%85%E5%AD%98%E6%B3%84%E6%BC%8F%E9%9D%A2%E5%AF%B9%E5%86%85%E5%AD%98%E6%B3%84%E6%BC%8F%E5%92%8C%E6%8C%87%E9%92%88%E8%B6%8A%E7%95%8C%E4%BD%A0%E6%9C%89%E5%93%AA%E4%BA%9B%E6%96%B9%E6%B3%95%E4%BD%A0%E9%80%9A%E5%B8%B8%E9%87%87%E7%94%A8%E5%93%AA%E4%BA%9B%E6%96%B9%E6%B3%95%E6%9D%A5%E9%81%BF%E5%85%8D%E5%92%8C%E5%87%8F%E5%B0%91%E8%BF%99%E7%B1%BB%E9%94%99%E8%AF%AF)

##### [15.5.8 C++11 中有哪些智能指针?shared_ptr 的引用计数是如何实现的?unique_ptr 的unique 是如何实现的?make_shared 和 make_unique 的作用?智能指针使用注意事项?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#518c11-%E4%B8%AD%E6%9C%89%E5%93%AA%E4%BA%9B%E6%99%BA%E8%83%BD%E6%8C%87%E9%92%88shared_ptr-%E7%9A%84%E5%BC%95%E7%94%A8%E8%AE%A1%E6%95%B0%E6%98%AF%E5%A6%82%E4%BD%95%E5%AE%9E%E7%8E%B0%E7%9A%84unique_ptr-%E7%9A%84unique-%E6%98%AF%E5%A6%82%E4%BD%95%E5%AE%9E%E7%8E%B0%E7%9A%84make_shared-%E5%92%8C-make_unique-%E7%9A%84%E4%BD%9C%E7%94%A8%E6%99%BA%E8%83%BD%E6%8C%87%E9%92%88%E4%BD%BF%E7%94%A8%E6%B3%A8%E6%84%8F%E4%BA%8B%E9%A1%B9)

##### [15.5.9 C和C++的区别?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#519c%E5%92%8Cc%E7%9A%84%E5%8C%BA%E5%88%AB)

##### [15.6.1 int fun() 和 int fun(void)的区别?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#520int-fun-%E5%92%8C-int-funvoid%E7%9A%84%E5%8C%BA%E5%88%AB))

##### [15.6.2 const 有什么用途](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#521const-%E6%9C%89%E4%BB%80%E4%B9%88%E7%94%A8%E9%80%94)

##### [15.6.3 在C中用const 能定义真正意义上的常量吗?C++中的const呢?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#522%E5%9C%A8c%E4%B8%AD%E7%94%A8const-%E8%83%BD%E5%AE%9A%E4%B9%89%E7%9C%9F%E6%AD%A3%E6%84%8F%E4%B9%89%E4%B8%8A%E7%9A%84%E5%B8%B8%E9%87%8F%E5%90%97c%E4%B8%AD%E7%9A%84const%E5%91%A2)

##### [15.6.4 宏和内联(inline)函数的比较?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#523%E5%AE%8F%E5%92%8C%E5%86%85%E8%81%94inline%E5%87%BD%E6%95%B0%E7%9A%84%E6%AF%94%E8%BE%83)

##### [15.6.5 C++中有了malloc / free , 为什么还需要 new / delete?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#524c%E4%B8%AD%E6%9C%89%E4%BA%86malloc--free--%E4%B8%BA%E4%BB%80%E4%B9%88%E8%BF%98%E9%9C%80%E8%A6%81-new--delete)

##### [15.6.6 C和C++中的强制类型转换?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#525c%E5%92%8Cc%E4%B8%AD%E7%9A%84%E5%BC%BA%E5%88%B6%E7%B1%BB%E5%9E%8B%E8%BD%AC%E6%8D%A2)

##### [15.6.7 static 有什么用途](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#526static-%E6%9C%89%E4%BB%80%E4%B9%88%E7%94%A8%E9%80%94)

##### [15.6.8 类的静态成员变量和静态成员函数各有哪些特性?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#527%E7%B1%BB%E7%9A%84%E9%9D%99%E6%80%81%E6%88%90%E5%91%98%E5%8F%98%E9%87%8F%E5%92%8C%E9%9D%99%E6%80%81%E6%88%90%E5%91%98%E5%87%BD%E6%95%B0%E5%90%84%E6%9C%89%E5%93%AA%E4%BA%9B%E7%89%B9%E6%80%A7)

##### [15.6.9 在C++程序中调用被C编译器编译后的函数,为什么要加extern“C”?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#528%E5%9C%A8c%E7%A8%8B%E5%BA%8F%E4%B8%AD%E8%B0%83%E7%94%A8%E8%A2%ABc%E7%BC%96%E8%AF%91%E5%99%A8%E7%BC%96%E8%AF%91%E5%90%8E%E7%9A%84%E5%87%BD%E6%95%B0%E4%B8%BA%E4%BB%80%E4%B9%88%E8%A6%81%E5%8A%A0externc)

##### [15.7.1 头文件中的 ifndef/define/endif 是干什么用的? 该用法和 program once 的区别?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#529%E5%A4%B4%E6%96%87%E4%BB%B6%E4%B8%AD%E7%9A%84-ifndefdefineendif-%E6%98%AF%E5%B9%B2%E4%BB%80%E4%B9%88%E7%94%A8%E7%9A%84-%E8%AF%A5%E7%94%A8%E6%B3%95%E5%92%8C-program-once-%E7%9A%84%E5%8C%BA%E5%88%AB)

##### [15.7.2 当i是一个整数的时候++i和i++那个更快一点?i++和++i的区别是什么?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#530%E5%BD%93i%E6%98%AF%E4%B8%80%E4%B8%AA%E6%95%B4%E6%95%B0%E7%9A%84%E6%97%B6%E5%80%99i%E5%92%8Ci%E9%82%A3%E4%B8%AA%E6%9B%B4%E5%BF%AB%E4%B8%80%E7%82%B9i%E5%92%8Ci%E7%9A%84%E5%8C%BA%E5%88%AB%E6%98%AF%E4%BB%80%E4%B9%88)

##### [15.7.3 指针和引用的区别?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#531%E6%8C%87%E9%92%88%E5%92%8C%E5%BC%95%E7%94%A8%E7%9A%84%E5%8C%BA%E5%88%AB)

##### [15.7.4 引用占用内存空间吗?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#532%E5%BC%95%E7%94%A8%E5%8D%A0%E7%94%A8%E5%86%85%E5%AD%98%E7%A9%BA%E9%97%B4%E5%90%97)

##### [15.7.5 三目运算符](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#533%E4%B8%89%E7%9B%AE%E8%BF%90%E7%AE%97%E7%AC%A6)

##### [15.7.6 指针数组和数组指针的区别](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#534%E6%8C%87%E9%92%88%E6%95%B0%E7%BB%84%E5%92%8C%E6%95%B0%E7%BB%84%E6%8C%87%E9%92%88%E7%9A%84%E5%8C%BA%E5%88%AB)

##### [15.7.7 左值引用与右值引用](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#535%E5%B7%A6%E5%80%BC%E5%BC%95%E7%94%A8%E4%B8%8E%E5%8F%B3%E5%80%BC%E5%BC%95%E7%94%A8)

##### [15.7.8 右值引用的意义](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#536%E5%8F%B3%E5%80%BC%E5%BC%95%E7%94%A8%E7%9A%84%E6%84%8F%E4%B9%89)

##### [15.7.9 什么是面向对象(OOP)?面向对象的意义?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#537%E4%BB%80%E4%B9%88%E6%98%AF%E9%9D%A2%E5%90%91%E5%AF%B9%E8%B1%A1oop%E9%9D%A2%E5%90%91%E5%AF%B9%E8%B1%A1%E7%9A%84%E6%84%8F%E4%B9%89)

##### [15.8.1 解释下封装、继承和多态?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#538%E8%A7%A3%E9%87%8A%E4%B8%8B%E5%B0%81%E8%A3%85%E7%BB%A7%E6%89%BF%E5%92%8C%E5%A4%9A%E6%80%81)

##### [15.8.2 什么时候生成默认构造函数(无参构造函数)?什么时候生成默认拷贝构造函数?什么是深拷贝?什么是浅拷贝?默认拷贝构造函数是哪种拷贝?什么时候用深拷贝?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#539%E4%BB%80%E4%B9%88%E6%97%B6%E5%80%99%E7%94%9F%E6%88%90%E9%BB%98%E8%AE%A4%E6%9E%84%E9%80%A0%E5%87%BD%E6%95%B0%E6%97%A0%E5%8F%82%E6%9E%84%E9%80%A0%E5%87%BD%E6%95%B0%E4%BB%80%E4%B9%88%E6%97%B6%E5%80%99%E7%94%9F%E6%88%90%E9%BB%98%E8%AE%A4%E6%8B%B7%E8%B4%9D%E6%9E%84%E9%80%A0%E5%87%BD%E6%95%B0%E4%BB%80%E4%B9%88%E6%98%AF%E6%B7%B1%E6%8B%B7%E8%B4%9D%E4%BB%80%E4%B9%88%E6%98%AF%E6%B5%85%E6%8B%B7%E8%B4%9D%E9%BB%98%E8%AE%A4%E6%8B%B7%E8%B4%9D%E6%9E%84%E9%80%A0%E5%87%BD%E6%95%B0%E6%98%AF%E5%93%AA%E7%A7%8D%E6%8B%B7%E8%B4%9D%E4%BB%80%E4%B9%88%E6%97%B6%E5%80%99%E7%94%A8%E6%B7%B1%E6%8B%B7%E8%B4%9D)

##### [15.8.3 构造函数和析构函数的执行顺序?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#540%E6%9E%84%E9%80%A0%E5%87%BD%E6%95%B0%E5%92%8C%E6%9E%90%E6%9E%84%E5%87%BD%E6%95%B0%E7%9A%84%E6%89%A7%E8%A1%8C%E9%A1%BA%E5%BA%8F)

##### [15.8.4 虚析构函数的作用?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#541%E8%99%9A%E6%9E%90%E6%9E%84%E5%87%BD%E6%95%B0%E7%9A%84%E4%BD%9C%E7%94%A8)

##### [15.8.5 细看拷贝构造函数](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#542%E7%BB%86%E7%9C%8B%E6%8B%B7%E8%B4%9D%E6%9E%84%E9%80%A0%E5%87%BD%E6%95%B0)

##### [15.8.6 C++的编译环境](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#543c%E7%9A%84%E7%BC%96%E8%AF%91%E7%8E%AF%E5%A2%83)

##### [15.8.7 Most vexing parse](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#544most-vexing-parse)

##### [15.8.8 STL 六大组件](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#545stl-%E5%85%AD%E5%A4%A7%E7%BB%84%E4%BB%B6)

##### [15.8.9 stack 中有 pop() 和 top() 方法,为什么不直接用 pop() 实现弹出和取值的功能?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#546stack-%E4%B8%AD%E6%9C%89-pop-%E5%92%8C-top-%E6%96%B9%E6%B3%95%E4%B8%BA%E4%BB%80%E4%B9%88%E4%B8%8D%E7%9B%B4%E6%8E%A5%E7%94%A8-pop-%E5%AE%9E%E7%8E%B0%E5%BC%B9%E5%87%BA%E5%92%8C%E5%8F%96%E5%80%BC%E7%9A%84%E5%8A%9F%E8%83%BD)

##### [15.9.1 map 和 unordered_map 的区别?各自的优缺点?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#547map-%E5%92%8C-unordered_map-%E7%9A%84%E5%8C%BA%E5%88%AB%E5%90%84%E8%87%AA%E7%9A%84%E4%BC%98%E7%BC%BA%E7%82%B9)

##### [15.9.2 如何初始化一个指针数组](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#548%E5%A6%82%E4%BD%95%E5%88%9D%E5%A7%8B%E5%8C%96%E4%B8%80%E4%B8%AA%E6%8C%87%E9%92%88%E6%95%B0%E7%BB%84)

##### [15.9.3 关键字const是什么含意?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#549%E5%85%B3%E9%94%AE%E5%AD%97const%E6%98%AF%E4%BB%80%E4%B9%88%E5%90%AB%E6%84%8F)

##### [15.9.4 什么是动态特性?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#550%E4%BB%80%E4%B9%88%E6%98%AF%E5%8A%A8%E6%80%81%E7%89%B9%E6%80%A7)

##### [15.9.5 基类的有1个虚函数,子类还需要申明为virtual吗?为什么。](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#551%E5%9F%BA%E7%B1%BB%E7%9A%84%E6%9C%891%E4%B8%AA%E8%99%9A%E5%87%BD%E6%95%B0%E5%AD%90%E7%B1%BB%E8%BF%98%E9%9C%80%E8%A6%81%E7%94%B3%E6%98%8E%E4%B8%BAvirtual%E5%90%97%E4%B8%BA%E4%BB%80%E4%B9%88)

##### [15.9.6 在C++ 程序中调用被 C 编译器编译后的函数,为什么要加 extern “C”声明?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#552%E5%9C%A8c-%E7%A8%8B%E5%BA%8F%E4%B8%AD%E8%B0%83%E7%94%A8%E8%A2%AB-c-%E7%BC%96%E8%AF%91%E5%99%A8%E7%BC%96%E8%AF%91%E5%90%8E%E7%9A%84%E5%87%BD%E6%95%B0%E4%B8%BA%E4%BB%80%E4%B9%88%E8%A6%81%E5%8A%A0-extern-c%E5%A3%B0%E6%98%8E)

##### [15.9.7 如何定义Bool变量的TRUE和FALSE的值。](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#553%E5%A6%82%E4%BD%95%E5%AE%9A%E4%B9%89bool%E5%8F%98%E9%87%8F%E7%9A%84true%E5%92%8Cfalse%E7%9A%84%E5%80%BC)

##### [15.9.8 内联函数INline和宏定义一起使用的区别。](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#554%E5%86%85%E8%81%94%E5%87%BD%E6%95%B0inline%E5%92%8C%E5%AE%8F%E5%AE%9A%E4%B9%89%E4%B8%80%E8%B5%B7%E4%BD%BF%E7%94%A8%E7%9A%84%E5%8C%BA%E5%88%AB)

##### [15.9.9 编写my_strcpy函数,实现与库函数strcpy类似的功能,不能使用任何库函数;](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#555%E7%BC%96%E5%86%99my_strcpy%E5%87%BD%E6%95%B0%E5%AE%9E%E7%8E%B0%E4%B8%8E%E5%BA%93%E5%87%BD%E6%95%B0strcpy%E7%B1%BB%E4%BC%BC%E7%9A%84%E5%8A%9F%E8%83%BD%E4%B8%8D%E8%83%BD%E4%BD%BF%E7%94%A8%E4%BB%BB%E4%BD%95%E5%BA%93%E5%87%BD%E6%95%B0)

##### [16.1.2 完成程序,实现对数组的降序排序](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#556%E5%AE%8C%E6%88%90%E7%A8%8B%E5%BA%8F%E5%AE%9E%E7%8E%B0%E5%AF%B9%E6%95%B0%E7%BB%84%E7%9A%84%E9%99%8D%E5%BA%8F%E6%8E%92%E5%BA%8F)

##### [16.1.3 .ICMP是什么协议,处于哪一层?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#557icmp%E6%98%AF%E4%BB%80%E4%B9%88%E5%8D%8F%E8%AE%AE%E5%A4%84%E4%BA%8E%E5%93%AA%E4%B8%80%E5%B1%82)

##### [16.1.4 C中static有什么作用](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#558c%E4%B8%ADstatic%E6%9C%89%E4%BB%80%E4%B9%88%E4%BD%9C%E7%94%A8)

##### [16.1.5 请问运行Test函数会有什么样的结果?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#559%E8%AF%B7%E9%97%AE%E8%BF%90%E8%A1%8Ctest%E5%87%BD%E6%95%B0%E4%BC%9A%E6%9C%89%E4%BB%80%E4%B9%88%E6%A0%B7%E7%9A%84%E7%BB%93%E6%9E%9C)

##### [16.1.6 C++特点是什么,如何实现多态?画出基类和子类在内存中的相互关系。](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#560c%E7%89%B9%E7%82%B9%E6%98%AF%E4%BB%80%E4%B9%88%E5%A6%82%E4%BD%95%E5%AE%9E%E7%8E%B0%E5%A4%9A%E6%80%81%E7%94%BB%E5%87%BA%E5%9F%BA%E7%B1%BB%E5%92%8C%E5%AD%90%E7%B1%BB%E5%9C%A8%E5%86%85%E5%AD%98%E4%B8%AD%E7%9A%84%E7%9B%B8%E4%BA%92%E5%85%B3%E7%B3%BB)

##### [16.1.7 C++中的什么是多态性? 是如何实现的?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#561c%E4%B8%AD%E7%9A%84%E4%BB%80%E4%B9%88%E6%98%AF%E5%A4%9A%E6%80%81%E6%80%A7-%E6%98%AF%E5%A6%82%E4%BD%95%E5%AE%9E%E7%8E%B0%E7%9A%84)

##### [16.1.8 关键字static的作用是什么?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#562%E5%85%B3%E9%94%AE%E5%AD%97static%E7%9A%84%E4%BD%9C%E7%94%A8%E6%98%AF%E4%BB%80%E4%B9%88)

##### [16.1.9 #define MAX_LEN 500 char arry[MAX_LEN]; cin>>arry; 这段代码有问题吗?若有,请指出并修改;](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#563define-max_len-500-char-arrymax_len-cinarry-%E8%BF%99%E6%AE%B5%E4%BB%A3%E7%A0%81%E6%9C%89%E9%97%AE%E9%A2%98%E5%90%97%E8%8B%A5%E6%9C%89%E8%AF%B7%E6%8C%87%E5%87%BA%E5%B9%B6%E4%BF%AE%E6%94%B9)

##### [16.2.1 delete []arry 和 delete arry 一样吗?不一样请说明;](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#564delete-arry-%E5%92%8C-delete-arry-%E4%B8%80%E6%A0%B7%E5%90%97%E4%B8%8D%E4%B8%80%E6%A0%B7%E8%AF%B7%E8%AF%B4%E6%98%8E)

##### [16.2.2 多态的作用?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#565%E5%A4%9A%E6%80%81%E7%9A%84%E4%BD%9C%E7%94%A8)

##### [16.2.3 C语言的volatile的含义是什么。使用时会对编译器有什么暗示。](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#566c%E8%AF%AD%E8%A8%80%E7%9A%84volatile%E7%9A%84%E5%90%AB%E4%B9%89%E6%98%AF%E4%BB%80%E4%B9%88%E4%BD%BF%E7%94%A8%E6%97%B6%E4%BC%9A%E5%AF%B9%E7%BC%96%E8%AF%91%E5%99%A8%E6%9C%89%E4%BB%80%E4%B9%88%E6%9A%97%E7%A4%BA)

##### [16.2.4 请简述以下两个for循环的优缺点](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#567%E8%AF%B7%E7%AE%80%E8%BF%B0%E4%BB%A5%E4%B8%8B%E4%B8%A4%E4%B8%AAfor%E5%BE%AA%E7%8E%AF%E7%9A%84%E4%BC%98%E7%BC%BA%E7%82%B9)

##### [16.2.5 预处理器标识#error的目的是什么?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#568%E9%A2%84%E5%A4%84%E7%90%86%E5%99%A8%E6%A0%87%E8%AF%86error%E7%9A%84%E7%9B%AE%E7%9A%84%E6%98%AF%E4%BB%80%E4%B9%88)

##### [16.2.6 C语言的volatile的含义是什么。使用时会对编译器有什么暗示。](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#569c%E8%AF%AD%E8%A8%80%E7%9A%84volatile%E7%9A%84%E5%90%AB%E4%B9%89%E6%98%AF%E4%BB%80%E4%B9%88%E4%BD%BF%E7%94%A8%E6%97%B6%E4%BC%9A%E5%AF%B9%E7%BC%96%E8%AF%91%E5%99%A8%E6%9C%89%E4%BB%80%E4%B9%88%E6%9A%97%E7%A4%BA)

##### [16.2.7 MFC中CString是类型安全类么?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#570mfc%E4%B8%ADcstring%E6%98%AF%E7%B1%BB%E5%9E%8B%E5%AE%89%E5%85%A8%E7%B1%BB%E4%B9%88)

##### [16.2.8 内联函数INline和宏定义一起使用的区别。](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#571%E5%86%85%E8%81%94%E5%87%BD%E6%95%B0inline%E5%92%8C%E5%AE%8F%E5%AE%9A%E4%B9%89%E4%B8%80%E8%B5%B7%E4%BD%BF%E7%94%A8%E7%9A%84%E5%8C%BA%E5%88%AB)

##### [16.2.9 C++中什么数据分配在栈或堆中,New分配数据是在近堆还是远堆中?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#572c%E4%B8%AD%E4%BB%80%E4%B9%88%E6%95%B0%E6%8D%AE%E5%88%86%E9%85%8D%E5%9C%A8%E6%A0%88%E6%88%96%E5%A0%86%E4%B8%ADnew%E5%88%86%E9%85%8D%E6%95%B0%E6%8D%AE%E6%98%AF%E5%9C%A8%E8%BF%91%E5%A0%86%E8%BF%98%E6%98%AF%E8%BF%9C%E5%A0%86%E4%B8%AD)

##### [16.3.1 DB事务处理的四个特性:](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#573db%E4%BA%8B%E5%8A%A1%E5%A4%84%E7%90%86%E7%9A%84%E5%9B%9B%E4%B8%AA%E7%89%B9%E6%80%A7)

##### [16.3.2 如何初始化一个指针数组。](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#574%E5%A6%82%E4%BD%95%E5%88%9D%E5%A7%8B%E5%8C%96%E4%B8%80%E4%B8%AA%E6%8C%87%E9%92%88%E6%95%B0%E7%BB%84)

##### [16.3.3 int i=(j=4,k=8,l=16,m=32); printf(“%d”, i); 输出是多少?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#575int-ij4k8l16m32-printfd-i-%E8%BE%93%E5%87%BA%E6%98%AF%E5%A4%9A%E5%B0%91)

##### [16.3.4 如何在C中初始化一个字符数组。](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#576%E5%A6%82%E4%BD%95%E5%9C%A8c%E4%B8%AD%E5%88%9D%E5%A7%8B%E5%8C%96%E4%B8%80%E4%B8%AA%E5%AD%97%E7%AC%A6%E6%95%B0%E7%BB%84)

##### [16.3.5 参数传递有几种方式;实现多态参数传递采用什么方式,如果没有使用某种方式原因是什么](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#577%E5%8F%82%E6%95%B0%E4%BC%A0%E9%80%92%E6%9C%89%E5%87%A0%E7%A7%8D%E6%96%B9%E5%BC%8F%E5%AE%9E%E7%8E%B0%E5%A4%9A%E6%80%81%E5%8F%82%E6%95%B0%E4%BC%A0%E9%80%92%E9%87%87%E7%94%A8%E4%BB%80%E4%B9%88%E6%96%B9%E5%BC%8F%E5%A6%82%E6%9E%9C%E6%B2%A1%E6%9C%89%E4%BD%BF%E7%94%A8%E6%9F%90%E7%A7%8D%E6%96%B9%E5%BC%8F%E5%8E%9F%E5%9B%A0%E6%98%AF%E4%BB%80%E4%B9%88)

##### [16.3.6 请填写BOOL , float, 指针变量 与“零值”比较的 if 语句。](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#578%E8%AF%B7%E5%A1%AB%E5%86%99bool--float-%E6%8C%87%E9%92%88%E5%8F%98%E9%87%8F-%E4%B8%8E%E9%9B%B6%E5%80%BC%E6%AF%94%E8%BE%83%E7%9A%84-if-%E8%AF%AD%E5%8F%A5)

##### [16.3.7 C++特点是什么,如何实现多态?画出基类和子类在内存中的相互关系。](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#579c%E7%89%B9%E7%82%B9%E6%98%AF%E4%BB%80%E4%B9%88%E5%A6%82%E4%BD%95%E5%AE%9E%E7%8E%B0%E5%A4%9A%E6%80%81%E7%94%BB%E5%87%BA%E5%9F%BA%E7%B1%BB%E5%92%8C%E5%AD%90%E7%B1%BB%E5%9C%A8%E5%86%85%E5%AD%98%E4%B8%AD%E7%9A%84%E7%9B%B8%E4%BA%92%E5%85%B3%E7%B3%BB)

##### [16.3.8 什么是“引用”?申明和使用“引用”要注意哪些问题?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#580%E4%BB%80%E4%B9%88%E6%98%AF%E5%BC%95%E7%94%A8%E7%94%B3%E6%98%8E%E5%92%8C%E4%BD%BF%E7%94%A8%E5%BC%95%E7%94%A8%E8%A6%81%E6%B3%A8%E6%84%8F%E5%93%AA%E4%BA%9B%E9%97%AE%E9%A2%98)

##### [16.3.9 触发器怎么工作的?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#581%E8%A7%A6%E5%8F%91%E5%99%A8%E6%80%8E%E4%B9%88%E5%B7%A5%E4%BD%9C%E7%9A%84)

##### [16.4.1 C也可以通过精心封装某些函数功能实现重用,那C++的类有什么优点吗,难道仅仅是为实现重用。](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#582c%E4%B9%9F%E5%8F%AF%E4%BB%A5%E9%80%9A%E8%BF%87%E7%B2%BE%E5%BF%83%E5%B0%81%E8%A3%85%E6%9F%90%E4%BA%9B%E5%87%BD%E6%95%B0%E5%8A%9F%E8%83%BD%E5%AE%9E%E7%8E%B0%E9%87%8D%E7%94%A8%E9%82%A3c%E7%9A%84%E7%B1%BB%E6%9C%89%E4%BB%80%E4%B9%88%E4%BC%98%E7%82%B9%E5%90%97%E9%9A%BE%E9%81%93%E4%BB%85%E4%BB%85%E6%98%AF%E4%B8%BA%E5%AE%9E%E7%8E%B0%E9%87%8D%E7%94%A8)

##### [16.4.2 CSingleLock是干什么的。](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#583csinglelock%E6%98%AF%E5%B9%B2%E4%BB%80%E4%B9%88%E7%9A%84)

##### [16.4.3 C++中引用和指针的区别?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#584c%E4%B8%AD%E5%BC%95%E7%94%A8%E5%92%8C%E6%8C%87%E9%92%88%E7%9A%84%E5%8C%BA%E5%88%AB)

##### [16.4.4 C与C++各自是如何定义常量的?有什么不同?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#585c%E4%B8%8Ec%E5%90%84%E8%87%AA%E6%98%AF%E5%A6%82%E4%BD%95%E5%AE%9A%E4%B9%89%E5%B8%B8%E9%87%8F%E7%9A%84%E6%9C%89%E4%BB%80%E4%B9%88%E4%B8%8D%E5%90%8C)

##### [16.4.5 C++函数中值的传递方式有哪几种?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#586c%E5%87%BD%E6%95%B0%E4%B8%AD%E5%80%BC%E7%9A%84%E4%BC%A0%E9%80%92%E6%96%B9%E5%BC%8F%E6%9C%89%E5%93%AA%E5%87%A0%E7%A7%8D)

##### [16.4.6 一般数据库若出现日志满了,会出现什么情况,是否还能使用?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#587%E4%B8%80%E8%88%AC%E6%95%B0%E6%8D%AE%E5%BA%93%E8%8B%A5%E5%87%BA%E7%8E%B0%E6%97%A5%E5%BF%97%E6%BB%A1%E4%BA%86%E4%BC%9A%E5%87%BA%E7%8E%B0%E4%BB%80%E4%B9%88%E6%83%85%E5%86%B5%E6%98%AF%E5%90%A6%E8%BF%98%E8%83%BD%E4%BD%BF%E7%94%A8)

##### [16.4.7 C++里面如何声明constvoidf(void)函数为C程序中的库函数?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#588c%E9%87%8C%E9%9D%A2%E5%A6%82%E4%BD%95%E5%A3%B0%E6%98%8Econstvoidfvoid%E5%87%BD%E6%95%B0%E4%B8%BAc%E7%A8%8B%E5%BA%8F%E4%B8%AD%E7%9A%84%E5%BA%93%E5%87%BD%E6%95%B0)

##### [16.4.8 c++中类和c语言中struct的区别(至少两点)](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#589c%E4%B8%AD%E7%B1%BB%E5%92%8Cc%E8%AF%AD%E8%A8%80%E4%B8%ADstruct%E7%9A%84%E5%8C%BA%E5%88%AB%E8%87%B3%E5%B0%91%E4%B8%A4%E7%82%B9)

##### [16.4.9 IP组播有那些好处?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#590ip%E7%BB%84%E6%92%AD%E6%9C%89%E9%82%A3%E4%BA%9B%E5%A5%BD%E5%A4%84)

##### [16.5.1 变量的声明和定义有什么区别?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#591%E5%8F%98%E9%87%8F%E7%9A%84%E5%A3%B0%E6%98%8E%E5%92%8C%E5%AE%9A%E4%B9%89%E6%9C%89%E4%BB%80%E4%B9%88%E5%8C%BA%E5%88%AB)

##### [16.5.2 程序什么时候应该使用线程,什么时候单线程效率高。](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#592%E7%A8%8B%E5%BA%8F%E4%BB%80%E4%B9%88%E6%97%B6%E5%80%99%E5%BA%94%E8%AF%A5%E4%BD%BF%E7%94%A8%E7%BA%BF%E7%A8%8B%E4%BB%80%E4%B9%88%E6%97%B6%E5%80%99%E5%8D%95%E7%BA%BF%E7%A8%8B%E6%95%88%E7%8E%87%E9%AB%98)

##### [16.5.3 介绍一下模板和容器。如何实现?(也许会让你当场举例实现)](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#593%E4%BB%8B%E7%BB%8D%E4%B8%80%E4%B8%8B%E6%A8%A1%E6%9D%BF%E5%92%8C%E5%AE%B9%E5%99%A8%E5%A6%82%E4%BD%95%E5%AE%9E%E7%8E%B0%E4%B9%9F%E8%AE%B8%E4%BC%9A%E8%AE%A9%E4%BD%A0%E5%BD%93%E5%9C%BA%E4%B8%BE%E4%BE%8B%E5%AE%9E%E7%8E%B0)

##### [16.5.4 以下为WindowsNT下的32位C++程序,请计算sizeof的值](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#594%E4%BB%A5%E4%B8%8B%E4%B8%BAwindowsnt%E4%B8%8B%E7%9A%8432%E4%BD%8Dc%E7%A8%8B%E5%BA%8F%E8%AF%B7%E8%AE%A1%E7%AE%97sizeof%E7%9A%84%E5%80%BC)

##### [16.5.5 C语言同意一些令人震惊的结构,下面的结构是合法的吗,如果是它做些什么?inta=5,b=7,c;c=a+++b;](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#595c%E8%AF%AD%E8%A8%80%E5%90%8C%E6%84%8F%E4%B8%80%E4%BA%9B%E4%BB%A4%E4%BA%BA%E9%9C%87%E6%83%8A%E7%9A%84%E7%BB%93%E6%9E%84%E4%B8%8B%E9%9D%A2%E7%9A%84%E7%BB%93%E6%9E%84%E6%98%AF%E5%90%88%E6%B3%95%E7%9A%84%E5%90%97%E5%A6%82%E6%9E%9C%E6%98%AF%E5%AE%83%E5%81%9A%E4%BA%9B%E4%BB%80%E4%B9%88inta5b7ccab)

##### [16.5.6 #include与#include“file.h”的区别?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#596include%E4%B8%8Eincludefileh%E7%9A%84%E5%8C%BA%E5%88%AB)

##### [16.5.7 如何在C中初始化一个字符数组。](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#597%E5%A6%82%E4%BD%95%E5%9C%A8c%E4%B8%AD%E5%88%9D%E5%A7%8B%E5%8C%96%E4%B8%80%E4%B8%AA%E5%AD%97%E7%AC%A6%E6%95%B0%E7%BB%84)

##### [16.5.8 在C++程序中调用被C编译器编译后的函数,为什么要加extern“C”?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#598%E5%9C%A8c%E7%A8%8B%E5%BA%8F%E4%B8%AD%E8%B0%83%E7%94%A8%E8%A2%ABc%E7%BC%96%E8%AF%91%E5%99%A8%E7%BC%96%E8%AF%91%E5%90%8E%E7%9A%84%E5%87%BD%E6%95%B0%E4%B8%BA%E4%BB%80%E4%B9%88%E8%A6%81%E5%8A%A0externc)

##### [16.5.9 内存的分配方式的分配方式有几种?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#599%E5%86%85%E5%AD%98%E7%9A%84%E5%88%86%E9%85%8D%E6%96%B9%E5%BC%8F%E7%9A%84%E5%88%86%E9%85%8D%E6%96%B9%E5%BC%8F%E6%9C%89%E5%87%A0%E7%A7%8D)

##### [16.6.1 在C++程序中调用被C编译器编译后的函数,为什么要加extern"C"?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#600%E5%9C%A8c%E7%A8%8B%E5%BA%8F%E4%B8%AD%E8%B0%83%E7%94%A8%E8%A2%ABc%E7%BC%96%E8%AF%91%E5%99%A8%E7%BC%96%E8%AF%91%E5%90%8E%E7%9A%84%E5%87%BD%E6%95%B0%E4%B8%BA%E4%BB%80%E4%B9%88%E8%A6%81%E5%8A%A0externc)

##### [16.6.2 如何让局部变量具有全局生命期。](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#601%E5%A6%82%E4%BD%95%E8%AE%A9%E5%B1%80%E9%83%A8%E5%8F%98%E9%87%8F%E5%85%B7%E6%9C%89%E5%85%A8%E5%B1%80%E7%94%9F%E5%91%BD%E6%9C%9F)

##### [16.6.3 解释堆和栈的区别。](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#602%E8%A7%A3%E9%87%8A%E5%A0%86%E5%92%8C%E6%A0%88%E7%9A%84%E5%8C%BA%E5%88%AB)

##### [16.6.4 在C++程序中调用被C编译器编译后的函数,为什么要加extern“C”声明?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#603%E5%9C%A8c%E7%A8%8B%E5%BA%8F%E4%B8%AD%E8%B0%83%E7%94%A8%E8%A2%ABc%E7%BC%96%E8%AF%91%E5%99%A8%E7%BC%96%E8%AF%91%E5%90%8E%E7%9A%84%E5%87%BD%E6%95%B0%E4%B8%BA%E4%BB%80%E4%B9%88%E8%A6%81%E5%8A%A0externc%E5%A3%B0%E6%98%8E)

##### [16.6.5 strtok函数在使用上要注意什么问题。](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#604strtok%E5%87%BD%E6%95%B0%E5%9C%A8%E4%BD%BF%E7%94%A8%E4%B8%8A%E8%A6%81%E6%B3%A8%E6%84%8F%E4%BB%80%E4%B9%88%E9%97%AE%E9%A2%98)

##### [16.6.6 用预处理指令#define声明一个常数,用以表明1年中有多少秒(忽略闰年问题)](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#605%E7%94%A8%E9%A2%84%E5%A4%84%E7%90%86%E6%8C%87%E4%BB%A4define%E5%A3%B0%E6%98%8E%E4%B8%80%E4%B8%AA%E5%B8%B8%E6%95%B0%E7%94%A8%E4%BB%A5%E8%A1%A8%E6%98%8E1%E5%B9%B4%E4%B8%AD%E6%9C%89%E5%A4%9A%E5%B0%91%E7%A7%92%E5%BF%BD%E7%95%A5%E9%97%B0%E5%B9%B4%E9%97%AE%E9%A2%98)

##### [16.6.7 说一说C与C++的内存分配方式?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#606%E8%AF%B4%E4%B8%80%E8%AF%B4c%E4%B8%8Ec%E7%9A%84%E5%86%85%E5%AD%98%E5%88%86%E9%85%8D%E6%96%B9%E5%BC%8F)

##### [16.6.8 你如何理解MVC。简单举例来说明其应用。](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#607%E4%BD%A0%E5%A6%82%E4%BD%95%E7%90%86%E8%A7%A3mvc%E7%AE%80%E5%8D%95%E4%B8%BE%E4%BE%8B%E6%9D%A5%E8%AF%B4%E6%98%8E%E5%85%B6%E5%BA%94%E7%94%A8)

##### [16.6.9 在C++程序中调用被C编译器编译后的函数,为什么要加extern“C”声明?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#608%E5%9C%A8c%E7%A8%8B%E5%BA%8F%E4%B8%AD%E8%B0%83%E7%94%A8%E8%A2%ABc%E7%BC%96%E8%AF%91%E5%99%A8%E7%BC%96%E8%AF%91%E5%90%8E%E7%9A%84%E5%87%BD%E6%95%B0%E4%B8%BA%E4%BB%80%E4%B9%88%E8%A6%81%E5%8A%A0externc%E5%A3%B0%E6%98%8E)

##### [16.7.1 inti=(j=4,k=8,l=16,m=32);printf(“%d”,i);输出是多少?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#609intij4k8l16m32printfdi%E8%BE%93%E5%87%BA%E6%98%AF%E5%A4%9A%E5%B0%91)

##### [16.7.2 #include与#include“file.h”的区别?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#610include%E4%B8%8Eincludefileh%E7%9A%84%E5%8C%BA%E5%88%AB)

##### [16.7.3 既然C++中有更好的const为什么还要使用宏?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#611%E6%97%A2%E7%84%B6c%E4%B8%AD%E6%9C%89%E6%9B%B4%E5%A5%BD%E7%9A%84const%E4%B8%BA%E4%BB%80%E4%B9%88%E8%BF%98%E8%A6%81%E4%BD%BF%E7%94%A8%E5%AE%8F)

##### [16.7.4 重载(overload)和重写(overried,有的书也叫做“覆盖”)的区别?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#612%E9%87%8D%E8%BD%BDoverload%E5%92%8C%E9%87%8D%E5%86%99overried%E6%9C%89%E7%9A%84%E4%B9%A6%E4%B9%9F%E5%8F%AB%E5%81%9A%E8%A6%86%E7%9B%96%E7%9A%84%E5%8C%BA%E5%88%AB)

##### [16.7.5 C++和C定义结构的分别是什么。](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#613c%E5%92%8Cc%E5%AE%9A%E4%B9%89%E7%BB%93%E6%9E%84%E7%9A%84%E5%88%86%E5%88%AB%E6%98%AF%E4%BB%80%E4%B9%88)

##### [16.7.6 #include和#include"a.h"有什么区别?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#614include%E5%92%8Cincludeah%E6%9C%89%E4%BB%80%E4%B9%88%E5%8C%BA%E5%88%AB)

##### [16.7.7 #include和#include“filename.h”有什么区别?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#615include%E5%92%8Cincludefilenameh%E6%9C%89%E4%BB%80%E4%B9%88%E5%8C%BA%E5%88%AB)

##### [16.7.8 C函数可否单独编译?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#616c%E5%87%BD%E6%95%B0%E5%8F%AF%E5%90%A6%E5%8D%95%E7%8B%AC%E7%BC%96%E8%AF%91)

##### [16.7.9 请简述以下两个for循环的优缺点](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#617%E8%AF%B7%E7%AE%80%E8%BF%B0%E4%BB%A5%E4%B8%8B%E4%B8%A4%E4%B8%AAfor%E5%BE%AA%E7%8E%AF%E7%9A%84%E4%BC%98%E7%BC%BA%E7%82%B9)

##### [16.8.1 完成程序,实现对数组的降序排序](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#618%E5%AE%8C%E6%88%90%E7%A8%8B%E5%BA%8F%E5%AE%9E%E7%8E%B0%E5%AF%B9%E6%95%B0%E7%BB%84%E7%9A%84%E9%99%8D%E5%BA%8F%E6%8E%92%E5%BA%8F)

##### [16.8.2 delete[]arry和deletearry一样吗?不一样请说明;](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#619deletearry%E5%92%8Cdeletearry%E4%B8%80%E6%A0%B7%E5%90%97%E4%B8%8D%E4%B8%80%E6%A0%B7%E8%AF%B7%E8%AF%B4%E6%98%8E)

##### [16.8.3 结合1个你认为比较能体现OOP思想的项目,用UML来描述。](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#620%E7%BB%93%E5%90%881%E4%B8%AA%E4%BD%A0%E8%AE%A4%E4%B8%BA%E6%AF%94%E8%BE%83%E8%83%BD%E4%BD%93%E7%8E%B0oop%E6%80%9D%E6%83%B3%E7%9A%84%E9%A1%B9%E7%9B%AE%E7%94%A8uml%E6%9D%A5%E6%8F%8F%E8%BF%B0)

##### [16.8.4 C与C++各自是如何定义常量的?有什么不同?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#621c%E4%B8%8Ec%E5%90%84%E8%87%AA%E6%98%AF%E5%A6%82%E4%BD%95%E5%AE%9A%E4%B9%89%E5%B8%B8%E9%87%8F%E7%9A%84%E6%9C%89%E4%BB%80%E4%B9%88%E4%B8%8D%E5%90%8C)

##### [16.8.5 头文件中的ifndef/define/endif干什么用?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#622%E5%A4%B4%E6%96%87%E4%BB%B6%E4%B8%AD%E7%9A%84ifndefdefineendif%E5%B9%B2%E4%BB%80%E4%B9%88%E7%94%A8)

##### [16.8.6 C++中为什么用模板类。](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#623c%E4%B8%AD%E4%B8%BA%E4%BB%80%E4%B9%88%E7%94%A8%E6%A8%A1%E6%9D%BF%E7%B1%BB)

##### [16.8.7 动态连接库的两种方式?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#624%E5%8A%A8%E6%80%81%E8%BF%9E%E6%8E%A5%E5%BA%93%E7%9A%84%E4%B8%A4%E7%A7%8D%E6%96%B9%E5%BC%8F)

##### [16.8.8 在什么时候需要使用“常引用”?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#625%E5%9C%A8%E4%BB%80%E4%B9%88%E6%97%B6%E5%80%99%E9%9C%80%E8%A6%81%E4%BD%BF%E7%94%A8%E5%B8%B8%E5%BC%95%E7%94%A8)

##### [16.8.9 预处理器标识#error的目的是什么?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#626%E9%A2%84%E5%A4%84%E7%90%86%E5%99%A8%E6%A0%87%E8%AF%86error%E7%9A%84%E7%9B%AE%E7%9A%84%E6%98%AF%E4%BB%80%E4%B9%88)

##### [16.9.1 GCC3.2.2版本中支持哪几种编程语言。](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#627gcc322%E7%89%88%E6%9C%AC%E4%B8%AD%E6%94%AF%E6%8C%81%E5%93%AA%E5%87%A0%E7%A7%8D%E7%BC%96%E7%A8%8B%E8%AF%AD%E8%A8%80)

##### [16.9.2 已知strcpy的函数原型:charstrcpy(charstrDest,constchar*strSrc)其中strDest是目的字符串,strSrc是源字符串。不调用C++/C的字符串库函数,请编写函数strcpy。](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#628%E5%B7%B2%E7%9F%A5strcpy%E7%9A%84%E5%87%BD%E6%95%B0%E5%8E%9F%E5%9E%8Bcharstrcpycharstrdestconstcharstrsrc%E5%85%B6%E4%B8%ADstrdest%E6%98%AF%E7%9B%AE%E7%9A%84%E5%AD%97%E7%AC%A6%E4%B8%B2strsrc%E6%98%AF%E6%BA%90%E5%AD%97%E7%AC%A6%E4%B8%B2%E4%B8%8D%E8%B0%83%E7%94%A8cc%E7%9A%84%E5%AD%97%E7%AC%A6%E4%B8%B2%E5%BA%93%E5%87%BD%E6%95%B0%E8%AF%B7%E7%BC%96%E5%86%99%E5%87%BD%E6%95%B0strcpy)

##### [16.9.3 重载(overload)和重写(overried,有的书也叫做“覆盖”)的区别?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#629%E9%87%8D%E8%BD%BDoverload%E5%92%8C%E9%87%8D%E5%86%99overried%E6%9C%89%E7%9A%84%E4%B9%A6%E4%B9%9F%E5%8F%AB%E5%81%9A%E8%A6%86%E7%9B%96%E7%9A%84%E5%8C%BA%E5%88%AB)

##### [16.9.4 多重继承如何消除向上继承的二义性。](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#630%E5%A4%9A%E9%87%8D%E7%BB%A7%E6%89%BF%E5%A6%82%E4%BD%95%E6%B6%88%E9%99%A4%E5%90%91%E4%B8%8A%E7%BB%A7%E6%89%BF%E7%9A%84%E4%BA%8C%E4%B9%89%E6%80%A7)

##### [16.9.5 #include与#include“file.h”的区别?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#631include%E4%B8%8Eincludefileh%E7%9A%84%E5%8C%BA%E5%88%AB)

##### [16.9.6 对数据库的一张表进行操作,同时要对另一张表进行操作,如何实现?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#632%E5%AF%B9%E6%95%B0%E6%8D%AE%E5%BA%93%E7%9A%84%E4%B8%80%E5%BC%A0%E8%A1%A8%E8%BF%9B%E8%A1%8C%E6%93%8D%E4%BD%9C%E5%90%8C%E6%97%B6%E8%A6%81%E5%AF%B9%E5%8F%A6%E4%B8%80%E5%BC%A0%E8%A1%A8%E8%BF%9B%E8%A1%8C%E6%93%8D%E4%BD%9C%E5%A6%82%E4%BD%95%E5%AE%9E%E7%8E%B0)

##### [16.9.7 #include和#include“filename.h”有什么区别?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#633includefilenameh%E5%92%8Cincludefilenameh%E6%9C%89%E4%BB%80%E4%B9%88%E5%8C%BA%E5%88%AB)

##### [16.9.8 预处理器标识#error的目的是什么?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#634%E9%A2%84%E5%A4%84%E7%90%86%E5%99%A8%E6%A0%87%E8%AF%86error%E7%9A%84%E7%9B%AE%E7%9A%84%E6%98%AF%E4%BB%80%E4%B9%88)

##### [16.9.9 头文件的作用是什么?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#635%E5%A4%B4%E6%96%87%E4%BB%B6%E7%9A%84%E4%BD%9C%E7%94%A8%E6%98%AF%E4%BB%80%E4%B9%88)

##### [17.1.1 请问运行Test函数会有什么样的结果?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#636%E8%AF%B7%E9%97%AE%E8%BF%90%E8%A1%8Ctest%E5%87%BD%E6%95%B0%E4%BC%9A%E6%9C%89%E4%BB%80%E4%B9%88%E6%A0%B7%E7%9A%84%E7%BB%93%E6%9E%9C)

##### [17.1.2 delete[]arry和deletearry一样吗?不一样请说明;](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#637deletearry%E5%92%8Cdeletearry%E4%B8%80%E6%A0%B7%E5%90%97%E4%B8%8D%E4%B8%80%E6%A0%B7%E8%AF%B7%E8%AF%B4%E6%98%8E)

##### [17.1.3 请问运行Test函数会有什么样的结果?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#638%E8%AF%B7%E9%97%AE%E8%BF%90%E8%A1%8Ctest%E5%87%BD%E6%95%B0%E4%BC%9A%E6%9C%89%E4%BB%80%E4%B9%88%E6%A0%B7%E7%9A%84%E7%BB%93%E6%9E%9C)

##### [17.1.4 请简述以下两个for循环的优缺点](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#639%E8%AF%B7%E7%AE%80%E8%BF%B0%E4%BB%A5%E4%B8%8B%E4%B8%A4%E4%B8%AAfor%E5%BE%AA%E7%8E%AF%E7%9A%84%E4%BC%98%E7%BC%BA%E7%82%B9)

##### [17.1.5 构造函数可否是虚汗数,为什么?析构函数呢,可否是纯虚的呢?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#640%E6%9E%84%E9%80%A0%E5%87%BD%E6%95%B0%E5%8F%AF%E5%90%A6%E6%98%AF%E8%99%9A%E6%B1%97%E6%95%B0%E4%B8%BA%E4%BB%80%E4%B9%88%E6%9E%90%E6%9E%84%E5%87%BD%E6%95%B0%E5%91%A2%E5%8F%AF%E5%90%A6%E6%98%AF%E7%BA%AF%E8%99%9A%E7%9A%84%E5%91%A2)

##### [17.1.6 在C++程序中调用被C编译器编译后的函数,为什么要加extern"C"?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#641%E5%9C%A8c%E7%A8%8B%E5%BA%8F%E4%B8%AD%E8%B0%83%E7%94%A8%E8%A2%ABc%E7%BC%96%E8%AF%91%E5%99%A8%E7%BC%96%E8%AF%91%E5%90%8E%E7%9A%84%E5%87%BD%E6%95%B0%E4%B8%BA%E4%BB%80%E4%B9%88%E8%A6%81%E5%8A%A0externc)

##### [17.1.7 请写出下面代码在32位平台上的运行结果,并说明sizeof的性质:](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#642%E8%AF%B7%E5%86%99%E5%87%BA%E4%B8%8B%E9%9D%A2%E4%BB%A3%E7%A0%81%E5%9C%A832%E4%BD%8D%E5%B9%B3%E5%8F%B0%E4%B8%8A%E7%9A%84%E8%BF%90%E8%A1%8C%E7%BB%93%E6%9E%9C%E5%B9%B6%E8%AF%B4%E6%98%8Esizeof%E7%9A%84%E6%80%A7%E8%B4%A8)

##### [17.1.8 高级通信包括信号量,——-,——–](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#643%E9%AB%98%E7%BA%A7%E9%80%9A%E4%BF%A1%E5%8C%85%E6%8B%AC%E4%BF%A1%E5%8F%B7%E9%87%8F-)

##### [17.1.9 关联、聚合(Aggregation)以及组合(Composition)的区别?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#644%E5%85%B3%E8%81%94%E8%81%9A%E5%90%88aggregation%E4%BB%A5%E5%8F%8A%E7%BB%84%E5%90%88composition%E7%9A%84%E5%8C%BA%E5%88%AB)

##### [17.2.1 尽管不像非嵌入式计算机那么常见,嵌入式系统还是有从堆(heap)中动态分配内存的过程的。那么嵌入式系统中,动态分配内存可能发生的问题是什么?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#645%E5%B0%BD%E7%AE%A1%E4%B8%8D%E5%83%8F%E9%9D%9E%E5%B5%8C%E5%85%A5%E5%BC%8F%E8%AE%A1%E7%AE%97%E6%9C%BA%E9%82%A3%E4%B9%88%E5%B8%B8%E8%A7%81%E5%B5%8C%E5%85%A5%E5%BC%8F%E7%B3%BB%E7%BB%9F%E8%BF%98%E6%98%AF%E6%9C%89%E4%BB%8E%E5%A0%86heap%E4%B8%AD%E5%8A%A8%E6%80%81%E5%88%86%E9%85%8D%E5%86%85%E5%AD%98%E7%9A%84%E8%BF%87%E7%A8%8B%E7%9A%84%E9%82%A3%E4%B9%88%E5%B5%8C%E5%85%A5%E5%BC%8F%E7%B3%BB%E7%BB%9F%E4%B8%AD%E5%8A%A8%E6%80%81%E5%88%86%E9%85%8D%E5%86%85%E5%AD%98%E5%8F%AF%E8%83%BD%E5%8F%91%E7%94%9F%E7%9A%84%E9%97%AE%E9%A2%98%E6%98%AF%E4%BB%80%E4%B9%88)

##### [17.2.2 请问运行Test函数会有什么样的结果?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#646%E8%AF%B7%E9%97%AE%E8%BF%90%E8%A1%8Ctest%E5%87%BD%E6%95%B0%E4%BC%9A%E6%9C%89%E4%BB%80%E4%B9%88%E6%A0%B7%E7%9A%84%E7%BB%93%E6%9E%9C)

##### [17.2.3 多态的实现](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#647%E5%A4%9A%E6%80%81%E7%9A%84%E5%AE%9E%E7%8E%B0)

##### [17.2.4 Cpp四种强制类型转换](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#648cpp%E5%9B%9B%E7%A7%8D%E5%BC%BA%E5%88%B6%E7%B1%BB%E5%9E%8B%E8%BD%AC%E6%8D%A2)

##### [17.2.5 类的static成员的特点](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#649%E7%B1%BB%E7%9A%84static%E6%88%90%E5%91%98%E7%9A%84%E7%89%B9%E7%82%B9)

##### [17.2.6 指针和引用的区别](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#650%E6%8C%87%E9%92%88%E5%92%8C%E5%BC%95%E7%94%A8%E7%9A%84%E5%8C%BA%E5%88%AB)

##### [17.2.7 谈谈对Cpp内存的理解](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#651%E8%B0%88%E8%B0%88%E5%AF%B9cpp%E5%86%85%E5%AD%98%E7%9A%84%E7%90%86%E8%A7%A3)

##### [17.2.8 谈谈new、delete、malloc、free](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#652%E8%B0%88%E8%B0%88newdeletemallocfree)

##### [17.2.9 const关键字](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#653const%E5%85%B3%E9%94%AE%E5%AD%97)

##### [17.3.1 知道STL吗,挑两个你最常用的容器说一说](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#654%E7%9F%A5%E9%81%93stl%E5%90%97%E6%8C%91%E4%B8%A4%E4%B8%AA%E4%BD%A0%E6%9C%80%E5%B8%B8%E7%94%A8%E7%9A%84%E5%AE%B9%E5%99%A8%E8%AF%B4%E4%B8%80%E8%AF%B4)

##### [17.3.2 怎么确定一个程序是C编译的还是C++编译的](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#655%E6%80%8E%E4%B9%88%E7%A1%AE%E5%AE%9A%E4%B8%80%E4%B8%AA%E7%A8%8B%E5%BA%8F%E6%98%AFc%E7%BC%96%E8%AF%91%E7%9A%84%E8%BF%98%E6%98%AFc%E7%BC%96%E8%AF%91%E7%9A%84)

##### [17.3.3 一个文件从源码到可执行文件所经历的过程](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#656%E4%B8%80%E4%B8%AA%E6%96%87%E4%BB%B6%E4%BB%8E%E6%BA%90%E7%A0%81%E5%88%B0%E5%8F%AF%E6%89%A7%E8%A1%8C%E6%96%87%E4%BB%B6%E6%89%80%E7%BB%8F%E5%8E%86%E7%9A%84%E8%BF%87%E7%A8%8B)

##### [17.3.4 了解C++新特性吗](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#657%E4%BA%86%E8%A7%A3c%E6%96%B0%E7%89%B9%E6%80%A7%E5%90%97)

##### [17.3.5 什么是纯虚函数](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#658%E4%BB%80%E4%B9%88%E6%98%AF%E7%BA%AF%E8%99%9A%E5%87%BD%E6%95%B0)

##### [17.3.6 构造函数和析构函数可以为虚函数吗](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#659%E6%9E%84%E9%80%A0%E5%87%BD%E6%95%B0%E5%92%8C%E6%9E%90%E6%9E%84%E5%87%BD%E6%95%B0%E5%8F%AF%E4%BB%A5%E4%B8%BA%E8%99%9A%E5%87%BD%E6%95%B0%E5%90%97)

##### [17.3.7 栈和堆的区别,什么时候必须使用堆](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#660%E6%A0%88%E5%92%8C%E5%A0%86%E7%9A%84%E5%8C%BA%E5%88%AB%E4%BB%80%E4%B9%88%E6%97%B6%E5%80%99%E5%BF%85%E9%A1%BB%E4%BD%BF%E7%94%A8%E5%A0%86)

##### [17.3.8 用宏定义实现swap](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#661%E7%94%A8%E5%AE%8F%E5%AE%9A%E4%B9%89%E5%AE%9E%E7%8E%B0swap)

##### [17.3.9 头文件<>和""的区别](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#662%E5%A4%B4%E6%96%87%E4%BB%B6%E5%92%8C%E7%9A%84%E5%8C%BA%E5%88%AB)

##### [17.4.1 编写string的构造函数、拷贝构造函数、赋值操作符重载和析构函数](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#663%E7%BC%96%E5%86%99string%E7%9A%84%E6%9E%84%E9%80%A0%E5%87%BD%E6%95%B0%E6%8B%B7%E8%B4%9D%E6%9E%84%E9%80%A0%E5%87%BD%E6%95%B0%E8%B5%8B%E5%80%BC%E6%93%8D%E4%BD%9C%E7%AC%A6%E9%87%8D%E8%BD%BD%E5%92%8C%E6%9E%90%E6%9E%84%E5%87%BD%E6%95%B0)

##### [17.4.2 进程和线程间的通信方式](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#664%E8%BF%9B%E7%A8%8B%E5%92%8C%E7%BA%BF%E7%A8%8B%E9%97%B4%E7%9A%84%E9%80%9A%E4%BF%A1%E6%96%B9%E5%BC%8F)

##### [17.4.3 死锁产生的原因和死锁的条件](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#665%E6%AD%BB%E9%94%81%E4%BA%A7%E7%94%9F%E7%9A%84%E5%8E%9F%E5%9B%A0%E5%92%8C%E6%AD%BB%E9%94%81%E7%9A%84%E6%9D%A1%E4%BB%B6)

##### [17.4.4 如何采用单线程处理高并发](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#666%E5%A6%82%E4%BD%95%E9%87%87%E7%94%A8%E5%8D%95%E7%BA%BF%E7%A8%8B%E5%A4%84%E7%90%86%E9%AB%98%E5%B9%B6%E5%8F%91)

##### [17.4.5 线程的状态](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#667%E7%BA%BF%E7%A8%8B%E7%9A%84%E7%8A%B6%E6%80%81)

##### [17.4.6 进程的状态](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#668%E8%BF%9B%E7%A8%8B%E7%9A%84%E7%8A%B6%E6%80%81)

##### [17.4.7 系统调用brk和mmap](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#669%E7%B3%BB%E7%BB%9F%E8%B0%83%E7%94%A8brk%E5%92%8Cmmap)

##### [17.4.8 说说三种内存管理机制](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#670%E8%AF%B4%E8%AF%B4%E4%B8%89%E7%A7%8D%E5%86%85%E5%AD%98%E7%AE%A1%E7%90%86%E6%9C%BA%E5%88%B6)

##### [17.4.9 大端和小端,用C++代码怎么确定](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#671%E5%A4%A7%E7%AB%AF%E5%92%8C%E5%B0%8F%E7%AB%AF%E7%94%A8c%E4%BB%A3%E7%A0%81%E6%80%8E%E4%B9%88%E7%A1%AE%E5%AE%9A)

##### [17.5.1 TCP和UDP的区别](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#672tcp%E5%92%8Cudp%E7%9A%84%E5%8C%BA%E5%88%AB)

##### [17.5.2 TCP三次握手](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#673tcp%E4%B8%89%E6%AC%A1%E6%8F%A1%E6%89%8B)

##### [17.5.3 三次握手的原因](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#674%E4%B8%89%E6%AC%A1%E6%8F%A1%E6%89%8B%E7%9A%84%E5%8E%9F%E5%9B%A0)

##### [17.5.4 TCP四次挥手](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#675tcp%E5%9B%9B%E6%AC%A1%E6%8C%A5%E6%89%8B)

##### [17.5.5 四次挥手的原因](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#676%E5%9B%9B%E6%AC%A1%E6%8C%A5%E6%89%8B%E7%9A%84%E5%8E%9F%E5%9B%A0)

##### [17.5.6 TIME_WAIT](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#677time_wait)

##### [17.5.7 Http协议](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#678http%E5%8D%8F%E8%AE%AE)

##### [17.5.8 几种常见的排序算法](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#679%E5%87%A0%E7%A7%8D%E5%B8%B8%E8%A7%81%E7%9A%84%E6%8E%92%E5%BA%8F%E7%AE%97%E6%B3%95)

##### [17.5.9 链表的一些性质和操作](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#680%E9%93%BE%E8%A1%A8%E7%9A%84%E4%B8%80%E4%BA%9B%E6%80%A7%E8%B4%A8%E5%92%8C%E6%93%8D%E4%BD%9C)

##### [17.6.1 常见的查找算法](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#681%E5%B8%B8%E8%A7%81%E7%9A%84%E6%9F%A5%E6%89%BE%E7%AE%97%E6%B3%95)

##### [17.6.2 动态规划](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#682%E5%8A%A8%E6%80%81%E8%A7%84%E5%88%92)

##### [17.6.3 关键字 static 的作用是什么?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#683%E5%85%B3%E9%94%AE%E5%AD%97-static-%E7%9A%84%E4%BD%9C%E7%94%A8%E6%98%AF%E4%BB%80%E4%B9%88)

##### [17.6.4 “引用”与指针的区别是什么?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#684%E5%BC%95%E7%94%A8%E4%B8%8E%E6%8C%87%E9%92%88%E7%9A%84%E5%8C%BA%E5%88%AB%E6%98%AF%E4%BB%80%E4%B9%88)

##### [17.6.5 ..h 头文件中的 ifndef/define/endif 的作用?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#685h-%E5%A4%B4%E6%96%87%E4%BB%B6%E4%B8%AD%E7%9A%84-ifndefdefineendif-%E7%9A%84%E4%BD%9C%E7%94%A8)

##### [17.6.6 #include 与 #include “file.h”的区别?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#686include-%E4%B8%8E-include-fileh%E7%9A%84%E5%8C%BA%E5%88%AB)

##### [17.6.7 描述实时系统的基本特性](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#687%E6%8F%8F%E8%BF%B0%E5%AE%9E%E6%97%B6%E7%B3%BB%E7%BB%9F%E7%9A%84%E5%9F%BA%E6%9C%AC%E7%89%B9%E6%80%A7)

##### [17.6.8 全局变量和局部变量在内存中是否有区别?如果有,是什么区别?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#688%E5%85%A8%E5%B1%80%E5%8F%98%E9%87%8F%E5%92%8C%E5%B1%80%E9%83%A8%E5%8F%98%E9%87%8F%E5%9C%A8%E5%86%85%E5%AD%98%E4%B8%AD%E6%98%AF%E5%90%A6%E6%9C%89%E5%8C%BA%E5%88%AB%E5%A6%82%E6%9E%9C%E6%9C%89%E6%98%AF%E4%BB%80%E4%B9%88%E5%8C%BA%E5%88%AB)

##### [17.6.9 什么是平衡二叉树?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#689%E4%BB%80%E4%B9%88%E6%98%AF%E5%B9%B3%E8%A1%A1%E4%BA%8C%E5%8F%89%E6%A0%91)

##### [17.7.1 堆栈溢出一般是由什么原因导致的?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#690%E5%A0%86%E6%A0%88%E6%BA%A2%E5%87%BA%E4%B8%80%E8%88%AC%E6%98%AF%E7%94%B1%E4%BB%80%E4%B9%88%E5%8E%9F%E5%9B%A0%E5%AF%BC%E8%87%B4%E7%9A%84)

##### [17.7.2 冒泡排序算法的时间复杂度是什么?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#691%E5%86%92%E6%B3%A1%E6%8E%92%E5%BA%8F%E7%AE%97%E6%B3%95%E7%9A%84%E6%97%B6%E9%97%B4%E5%A4%8D%E6%9D%82%E5%BA%A6%E6%98%AF%E4%BB%80%E4%B9%88)

##### [17.7.3 什么函数不能声明为虚函数?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#692%E4%BB%80%E4%B9%88%E5%87%BD%E6%95%B0%E4%B8%8D%E8%83%BD%E5%A3%B0%E6%98%8E%E4%B8%BA%E8%99%9A%E5%87%BD%E6%95%B0)

##### [17.7.4 队列和栈有什么区别?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#693%E9%98%9F%E5%88%97%E5%92%8C%E6%A0%88%E6%9C%89%E4%BB%80%E4%B9%88%E5%8C%BA%E5%88%AB)

##### [17.7.5 不能做 switch()的参数类型](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#694%E4%B8%8D%E8%83%BD%E5%81%9A-switch%E7%9A%84%E5%8F%82%E6%95%B0%E7%B1%BB%E5%9E%8B)

##### [17.7.6 局部变量能否和全局变量重名?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#695%E5%B1%80%E9%83%A8%E5%8F%98%E9%87%8F%E8%83%BD%E5%90%A6%E5%92%8C%E5%85%A8%E5%B1%80%E5%8F%98%E9%87%8F%E9%87%8D%E5%90%8D)

##### [17.7.7 如何引用一个已经定义过的全局变量?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#696%E5%A6%82%E4%BD%95%E5%BC%95%E7%94%A8%E4%B8%80%E4%B8%AA%E5%B7%B2%E7%BB%8F%E5%AE%9A%E4%B9%89%E8%BF%87%E7%9A%84%E5%85%A8%E5%B1%80%E5%8F%98%E9%87%8F)

##### [17.7.8 全局变量可不可以定义在可被多个.C 文件包含的头文件中?为什么?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#697%E5%85%A8%E5%B1%80%E5%8F%98%E9%87%8F%E5%8F%AF%E4%B8%8D%E5%8F%AF%E4%BB%A5%E5%AE%9A%E4%B9%89%E5%9C%A8%E5%8F%AF%E8%A2%AB%E5%A4%9A%E4%B8%AAc-%E6%96%87%E4%BB%B6%E5%8C%85%E5%90%AB%E7%9A%84%E5%A4%B4%E6%96%87%E4%BB%B6%E4%B8%AD%E4%B8%BA%E4%BB%80%E4%B9%88)

##### [17.7.9 语句 for( ;1 ;)有什么问题?它是什么意思?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#698%E8%AF%AD%E5%8F%A5-for-1-%E6%9C%89%E4%BB%80%E4%B9%88%E9%97%AE%E9%A2%98%E5%AE%83%E6%98%AF%E4%BB%80%E4%B9%88%E6%84%8F%E6%80%9D)

##### [17.8.1 do……while 和 while……do 有什么区别?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#699dowhile-%E5%92%8C-whiledo-%E6%9C%89%E4%BB%80%E4%B9%88%E5%8C%BA%E5%88%AB)

##### [17.8.2 statac 全局变量、局部变量、函数与普通全局变量、局部变量、函数 static 全局变量与普通的全局变量有什么区别?static局部变量和普通局部变量有什么区别? static 函数与普通函数有什么区别?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#700statac-%E5%85%A8%E5%B1%80%E5%8F%98%E9%87%8F%E5%B1%80%E9%83%A8%E5%8F%98%E9%87%8F%E5%87%BD%E6%95%B0%E4%B8%8E%E6%99%AE%E9%80%9A%E5%85%A8%E5%B1%80%E5%8F%98%E9%87%8F%E5%B1%80%E9%83%A8%E5%8F%98%E9%87%8F%E5%87%BD%E6%95%B0-static-%E5%85%A8%E5%B1%80%E5%8F%98%E9%87%8F%E4%B8%8E%E6%99%AE%E9%80%9A%E7%9A%84%E5%85%A8%E5%B1%80%E5%8F%98%E9%87%8F%E6%9C%89%E4%BB%80%E4%B9%88%E5%8C%BA%E5%88%ABstatic%E5%B1%80%E9%83%A8%E5%8F%98%E9%87%8F%E5%92%8C%E6%99%AE%E9%80%9A%E5%B1%80%E9%83%A8%E5%8F%98%E9%87%8F%E6%9C%89%E4%BB%80%E4%B9%88%E5%8C%BA%E5%88%AB-static-%E5%87%BD%E6%95%B0%E4%B8%8E%E6%99%AE%E9%80%9A%E5%87%BD%E6%95%B0%E6%9C%89%E4%BB%80%E4%B9%88%E5%8C%BA%E5%88%AB)

##### [17.8.3 程序的内存分配](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#701%E7%A8%8B%E5%BA%8F%E7%9A%84%E5%86%85%E5%AD%98%E5%88%86%E9%85%8D)

##### [17.8.4 解释堆和栈的区别](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#702%E8%A7%A3%E9%87%8A%E5%A0%86%E5%92%8C%E6%A0%88%E7%9A%84%E5%8C%BA%E5%88%AB)

##### [17.8.5 什么是预编译,何时需要预编译?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#703%E4%BB%80%E4%B9%88%E6%98%AF%E9%A2%84%E7%BC%96%E8%AF%91%E4%BD%95%E6%97%B6%E9%9C%80%E8%A6%81%E9%A2%84%E7%BC%96%E8%AF%91)

##### [17.8.6 关键字 const 是什么含意?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#704%E5%85%B3%E9%94%AE%E5%AD%97-const-%E6%98%AF%E4%BB%80%E4%B9%88%E5%90%AB%E6%84%8F)

##### [17.8.7 关键字 volatile 有什么含意 并给出三个不同的例子。](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#705%E5%85%B3%E9%94%AE%E5%AD%97-volatile-%E6%9C%89%E4%BB%80%E4%B9%88%E5%90%AB%E6%84%8F-%E5%B9%B6%E7%BB%99%E5%87%BA%E4%B8%89%E4%B8%AA%E4%B8%8D%E5%90%8C%E7%9A%84%E4%BE%8B%E5%AD%90)

##### [17.8.8 三种基本的数据模型](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#706%E4%B8%89%E7%A7%8D%E5%9F%BA%E6%9C%AC%E7%9A%84%E6%95%B0%E6%8D%AE%E6%A8%A1%E5%9E%8B)

##### [17.8.9 结构与联合有和区别?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#707%E7%BB%93%E6%9E%84%E4%B8%8E%E8%81%94%E5%90%88%E6%9C%89%E5%92%8C%E5%8C%BA%E5%88%AB)

##### [17.9.1 描述内存分配方式以及它们的区别?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#708%E6%8F%8F%E8%BF%B0%E5%86%85%E5%AD%98%E5%88%86%E9%85%8D%E6%96%B9%E5%BC%8F%E4%BB%A5%E5%8F%8A%E5%AE%83%E4%BB%AC%E7%9A%84%E5%8C%BA%E5%88%AB)

##### [17.9.2 请说出 const 与#define 相比,有何优点?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#709%E8%AF%B7%E8%AF%B4%E5%87%BA-const-%E4%B8%8Edefine-%E7%9B%B8%E6%AF%94%E6%9C%89%E4%BD%95%E4%BC%98%E7%82%B9)

##### [17.9.3 简述数组与指针的区别?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#710%E7%AE%80%E8%BF%B0%E6%95%B0%E7%BB%84%E4%B8%8E%E6%8C%87%E9%92%88%E7%9A%84%E5%8C%BA%E5%88%AB)

##### [17.9.4 分别写出 BOOL,int,float,指针类型的变量 a 与“零”的比较语句。](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#711%E5%88%86%E5%88%AB%E5%86%99%E5%87%BA-boolintfloat%E6%8C%87%E9%92%88%E7%B1%BB%E5%9E%8B%E7%9A%84%E5%8F%98%E9%87%8F-a-%E4%B8%8E%E9%9B%B6%E7%9A%84%E6%AF%94%E8%BE%83%E8%AF%AD%E5%8F%A5)

##### [17.9.5 如何判断一段程序是由 C 编译程序还是由 C++编译程序编译的?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#712%E5%A6%82%E4%BD%95%E5%88%A4%E6%96%AD%E4%B8%80%E6%AE%B5%E7%A8%8B%E5%BA%8F%E6%98%AF%E7%94%B1-c-%E7%BC%96%E8%AF%91%E7%A8%8B%E5%BA%8F%E8%BF%98%E6%98%AF%E7%94%B1-c%E7%BC%96%E8%AF%91%E7%A8%8B%E5%BA%8F%E7%BC%96%E8%AF%91%E7%9A%84)

##### [17.9.6 用两个栈实现一个队列的功能?要求给出算法和思路!](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#713%E7%94%A8%E4%B8%A4%E4%B8%AA%E6%A0%88%E5%AE%9E%E7%8E%B0%E4%B8%80%E4%B8%AA%E9%98%9F%E5%88%97%E7%9A%84%E5%8A%9F%E8%83%BD%E8%A6%81%E6%B1%82%E7%BB%99%E5%87%BA%E7%AE%97%E6%B3%95%E5%92%8C%E6%80%9D%E8%B7%AF)

##### [17.9.7 嵌入式系统中经常要用到无限循环,你怎么样用 C 编写死循环呢?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#714%E5%B5%8C%E5%85%A5%E5%BC%8F%E7%B3%BB%E7%BB%9F%E4%B8%AD%E7%BB%8F%E5%B8%B8%E8%A6%81%E7%94%A8%E5%88%B0%E6%97%A0%E9%99%90%E5%BE%AA%E7%8E%AF%E4%BD%A0%E6%80%8E%E4%B9%88%E6%A0%B7%E7%94%A8-c-%E7%BC%96%E5%86%99%E6%AD%BB%E5%BE%AA%E7%8E%AF%E5%91%A2)

##### [17.9.8 位操作(Bit manipulation)](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#715%E4%BD%8D%E6%93%8D%E4%BD%9Cbit-manipulation)

##### [17.9.9 访问固定的内存位置(Accessing fixed memory locations)](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#716%E8%AE%BF%E9%97%AE%E5%9B%BA%E5%AE%9A%E7%9A%84%E5%86%85%E5%AD%98%E4%BD%8D%E7%BD%AEaccessing-fixed-memory-locations)

##### [18.1.1 中断(Interrupts)](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#717%E4%B8%AD%E6%96%ADinterrupts)

##### [18.1.2 动态内存分配(Dynamic memory allocation)](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#718%E5%8A%A8%E6%80%81%E5%86%85%E5%AD%98%E5%88%86%E9%85%8Ddynamic-memory-allocation)

##### [18.1.3 Typedef](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#719typedef)

##### [18.1.4 用变量 a 给出下面的定义](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#720%E7%94%A8%E5%8F%98%E9%87%8F-a-%E7%BB%99%E5%87%BA%E4%B8%8B%E9%9D%A2%E7%9A%84%E5%AE%9A%E4%B9%89)

##### [18.1.5 写一个“标准”宏](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#721%E5%86%99%E4%B8%80%E4%B8%AA%E6%A0%87%E5%87%86%E5%AE%8F)

##### [18.1.6 A.c 和 B.c 两个 c 文件中使用了两个相同名字的 static 变量,编译的时候会不会有问题? 这两个 static 变量会保存到哪里(栈还是堆或者其他的)?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#722ac-%E5%92%8C-bc-%E4%B8%A4%E4%B8%AA-c-%E6%96%87%E4%BB%B6%E4%B8%AD%E4%BD%BF%E7%94%A8%E4%BA%86%E4%B8%A4%E4%B8%AA%E7%9B%B8%E5%90%8C%E5%90%8D%E5%AD%97%E7%9A%84-static-%E5%8F%98%E9%87%8F%E7%BC%96%E8%AF%91%E7%9A%84%E6%97%B6%E5%80%99%E4%BC%9A%E4%B8%8D%E4%BC%9A%E6%9C%89%E9%97%AE%E9%A2%98-%E8%BF%99%E4%B8%A4%E4%B8%AA-static-%E5%8F%98%E9%87%8F%E4%BC%9A%E4%BF%9D%E5%AD%98%E5%88%B0%E5%93%AA%E9%87%8C%E6%A0%88%E8%BF%98%E6%98%AF%E5%A0%86%E6%88%96%E8%80%85%E5%85%B6%E4%BB%96%E7%9A%84)

##### [18.1.7 一个单向链表,不知道头节点,一个指针指向其中的一个节点,问如何删除这个指针指 向的节点?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#723%E4%B8%80%E4%B8%AA%E5%8D%95%E5%90%91%E9%93%BE%E8%A1%A8%E4%B8%8D%E7%9F%A5%E9%81%93%E5%A4%B4%E8%8A%82%E7%82%B9%E4%B8%80%E4%B8%AA%E6%8C%87%E9%92%88%E6%8C%87%E5%90%91%E5%85%B6%E4%B8%AD%E7%9A%84%E4%B8%80%E4%B8%AA%E8%8A%82%E7%82%B9%E9%97%AE%E5%A6%82%E4%BD%95%E5%88%A0%E9%99%A4%E8%BF%99%E4%B8%AA%E6%8C%87%E9%92%88%E6%8C%87-%E5%90%91%E7%9A%84%E8%8A%82%E7%82%B9)

##### [18.1.8 比较字符串,输出它们第一个不同字母的位置,大小写不敏感](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#724%E6%AF%94%E8%BE%83%E5%AD%97%E7%AC%A6%E4%B8%B2%E8%BE%93%E5%87%BA%E5%AE%83%E4%BB%AC%E7%AC%AC%E4%B8%80%E4%B8%AA%E4%B8%8D%E5%90%8C%E5%AD%97%E6%AF%8D%E7%9A%84%E4%BD%8D%E7%BD%AE%E5%A4%A7%E5%B0%8F%E5%86%99%E4%B8%8D%E6%95%8F%E6%84%9F)

##### [18.1.9 判断一个数是不是回文数,数字 1234321。](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#725%E5%88%A4%E6%96%AD%E4%B8%80%E4%B8%AA%E6%95%B0%E6%98%AF%E4%B8%8D%E6%98%AF%E5%9B%9E%E6%96%87%E6%95%B0%E6%95%B0%E5%AD%97-1234321)

##### [18.2.1 比较两字符串长短,并返回结果。](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#726%E6%AF%94%E8%BE%83%E4%B8%A4%E5%AD%97%E7%AC%A6%E4%B8%B2%E9%95%BF%E7%9F%AD%E5%B9%B6%E8%BF%94%E5%9B%9E%E7%BB%93%E6%9E%9C)

##### [18.2.2 给一个字符串,编程取其中一个特定的字符并输出。](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#727%E7%BB%99%E4%B8%80%E4%B8%AA%E5%AD%97%E7%AC%A6%E4%B8%B2%E7%BC%96%E7%A8%8B%E5%8F%96%E5%85%B6%E4%B8%AD%E4%B8%80%E4%B8%AA%E7%89%B9%E5%AE%9A%E7%9A%84%E5%AD%97%E7%AC%A6%E5%B9%B6%E8%BE%93%E5%87%BA)

##### [18.2.3 是比较两个英文字符串的不相同的字符的位置(忽略字母大小写)](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#728%E6%98%AF%E6%AF%94%E8%BE%83%E4%B8%A4%E4%B8%AA%E8%8B%B1%E6%96%87%E5%AD%97%E7%AC%A6%E4%B8%B2%E7%9A%84%E4%B8%8D%E7%9B%B8%E5%90%8C%E7%9A%84%E5%AD%97%E7%AC%A6%E7%9A%84%E4%BD%8D%E7%BD%AE%E5%BF%BD%E7%95%A5%E5%AD%97%E6%AF%8D%E5%A4%A7%E5%B0%8F%E5%86%99)

##### [18.2.4 主函数调用一函数](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#729%E4%B8%BB%E5%87%BD%E6%95%B0%E8%B0%83%E7%94%A8%E4%B8%80%E5%87%BD%E6%95%B0)

##### [18.2.5 输入一个整数n,计算不大于n的数中和7相关的数的个数,包括能被7整出的数和含有字符7的数。](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#730%E8%BE%93%E5%85%A5%E4%B8%80%E4%B8%AA%E6%95%B4%E6%95%B0n%E8%AE%A1%E7%AE%97%E4%B8%8D%E5%A4%A7%E4%BA%8En%E7%9A%84%E6%95%B0%E4%B8%AD%E5%92%8C7%E7%9B%B8%E5%85%B3%E7%9A%84%E6%95%B0%E7%9A%84%E4%B8%AA%E6%95%B0%E5%8C%85%E6%8B%AC%E8%83%BD%E8%A2%AB7%E6%95%B4%E5%87%BA%E7%9A%84%E6%95%B0%E5%92%8C%E5%90%AB%E6%9C%89%E5%AD%97%E7%AC%A67%E7%9A%84%E6%95%B0)

##### [18.2.6 输入一个整数将每一位上的奇数放在一个新整数中,高位放在高位,地位在低位。](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#731%E8%BE%93%E5%85%A5%E4%B8%80%E4%B8%AA%E6%95%B4%E6%95%B0%E5%B0%86%E6%AF%8F%E4%B8%80%E4%BD%8D%E4%B8%8A%E7%9A%84%E5%A5%87%E6%95%B0%E6%94%BE%E5%9C%A8%E4%B8%80%E4%B8%AA%E6%96%B0%E6%95%B4%E6%95%B0%E4%B8%AD%E9%AB%98%E4%BD%8D%E6%94%BE%E5%9C%A8%E9%AB%98%E4%BD%8D%E5%9C%B0%E4%BD%8D%E5%9C%A8%E4%BD%8E%E4%BD%8D)

##### [18.2.7 输入一串数,将其最小的放在第一位,次小的放在最后一位,再小的放在第二位,再再小的放在倒数第二位,以此类推。](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#732%E8%BE%93%E5%85%A5%E4%B8%80%E4%B8%B2%E6%95%B0%E5%B0%86%E5%85%B6%E6%9C%80%E5%B0%8F%E7%9A%84%E6%94%BE%E5%9C%A8%E7%AC%AC%E4%B8%80%E4%BD%8D%E6%AC%A1%E5%B0%8F%E7%9A%84%E6%94%BE%E5%9C%A8%E6%9C%80%E5%90%8E%E4%B8%80%E4%BD%8D%E5%86%8D%E5%B0%8F%E7%9A%84%E6%94%BE%E5%9C%A8%E7%AC%AC%E4%BA%8C%E4%BD%8D%E5%86%8D%E5%86%8D%E5%B0%8F%E7%9A%84%E6%94%BE%E5%9C%A8%E5%80%92%E6%95%B0%E7%AC%AC%E4%BA%8C%E4%BD%8D%E4%BB%A5%E6%AD%A4%E7%B1%BB%E6%8E%A8)

##### [18.2.8 写一个函数,传入参数为应付钱数。返回值为买家最少付出的钱的张数int get MoneyNum(int iInputMoney)例如:买家应付351元,最少张数为5.备注:可支付的钱币只有100、50、10、5、1不考虑2、20以及小数部分。](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#733%E5%86%99%E4%B8%80%E4%B8%AA%E5%87%BD%E6%95%B0%E4%BC%A0%E5%85%A5%E5%8F%82%E6%95%B0%E4%B8%BA%E5%BA%94%E4%BB%98%E9%92%B1%E6%95%B0%E8%BF%94%E5%9B%9E%E5%80%BC%E4%B8%BA%E4%B9%B0%E5%AE%B6%E6%9C%80%E5%B0%91%E4%BB%98%E5%87%BA%E7%9A%84%E9%92%B1%E7%9A%84%E5%BC%A0%E6%95%B0int-get-moneynumint-iinputmoney%E4%BE%8B%E5%A6%82%E4%B9%B0%E5%AE%B6%E5%BA%94%E4%BB%98351%E5%85%83%E6%9C%80%E5%B0%91%E5%BC%A0%E6%95%B0%E4%B8%BA5%E5%A4%87%E6%B3%A8%E5%8F%AF%E6%94%AF%E4%BB%98%E7%9A%84%E9%92%B1%E5%B8%81%E5%8F%AA%E6%9C%89100501051%E4%B8%8D%E8%80%83%E8%99%91220%E4%BB%A5%E5%8F%8A%E5%B0%8F%E6%95%B0%E9%83%A8%E5%88%86)

##### [18.2.9 对姓氏进行排名](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#734%E5%AF%B9%E5%A7%93%E6%B0%8F%E8%BF%9B%E8%A1%8C%E6%8E%92%E5%90%8D)

##### [18.3.1 将一组整数中为奇数的数提取出来,高低位顺序不变。如:8 3 7 9 5 2 1 4-----》3 7 5 1](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#735%E5%B0%86%E4%B8%80%E7%BB%84%E6%95%B4%E6%95%B0%E4%B8%AD%E4%B8%BA%E5%A5%87%E6%95%B0%E7%9A%84%E6%95%B0%E6%8F%90%E5%8F%96%E5%87%BA%E6%9D%A5%E9%AB%98%E4%BD%8E%E4%BD%8D%E9%A1%BA%E5%BA%8F%E4%B8%8D%E5%8F%98%E5%A6%828-3-7-9-5-2-1-4-----3-7-5-1)

##### [18.3.2 一组2n+1个元素的正整形数组,按升序排序,然后将小于中间数值的成员替换为中间的值。](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#736%E4%B8%80%E7%BB%842n1%E4%B8%AA%E5%85%83%E7%B4%A0%E7%9A%84%E6%AD%A3%E6%95%B4%E5%BD%A2%E6%95%B0%E7%BB%84%E6%8C%89%E5%8D%87%E5%BA%8F%E6%8E%92%E5%BA%8F%E7%84%B6%E5%90%8E%E5%B0%86%E5%B0%8F%E4%BA%8E%E4%B8%AD%E9%97%B4%E6%95%B0%E5%80%BC%E7%9A%84%E6%88%90%E5%91%98%E6%9B%BF%E6%8D%A2%E4%B8%BA%E4%B8%AD%E9%97%B4%E7%9A%84%E5%80%BC)

##### [18.3.3 输入一个四位的十进制整数,编程实现将这四位整数转化为十六进制的字符串,并输出十六进制的字符串(注意负数的处理)](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#737%E8%BE%93%E5%85%A5%E4%B8%80%E4%B8%AA%E5%9B%9B%E4%BD%8D%E7%9A%84%E5%8D%81%E8%BF%9B%E5%88%B6%E6%95%B4%E6%95%B0%E7%BC%96%E7%A8%8B%E5%AE%9E%E7%8E%B0%E5%B0%86%E8%BF%99%E5%9B%9B%E4%BD%8D%E6%95%B4%E6%95%B0%E8%BD%AC%E5%8C%96%E4%B8%BA%E5%8D%81%E5%85%AD%E8%BF%9B%E5%88%B6%E7%9A%84%E5%AD%97%E7%AC%A6%E4%B8%B2%E5%B9%B6%E8%BE%93%E5%87%BA%E5%8D%81%E5%85%AD%E8%BF%9B%E5%88%B6%E7%9A%84%E5%AD%97%E7%AC%A6%E4%B8%B2%E6%B3%A8%E6%84%8F%E8%B4%9F%E6%95%B0%E7%9A%84%E5%A4%84%E7%90%86)

##### [18.3.4 介绍一下STL,详细说明STL如何实现vector。](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#738%E4%BB%8B%E7%BB%8D%E4%B8%80%E4%B8%8Bstl%E8%AF%A6%E7%BB%86%E8%AF%B4%E6%98%8Estl%E5%A6%82%E4%BD%95%E5%AE%9E%E7%8E%B0vector)

##### [18.3.5 如果用VC开发程序,常见这么几个错误,C2001,c2005,c2011,这些错误的原因是什么。](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#739%E5%A6%82%E6%9E%9C%E7%94%A8vc%E5%BC%80%E5%8F%91%E7%A8%8B%E5%BA%8F%E5%B8%B8%E8%A7%81%E8%BF%99%E4%B9%88%E5%87%A0%E4%B8%AA%E9%94%99%E8%AF%AFc2001c2005c2011%E8%BF%99%E4%BA%9B%E9%94%99%E8%AF%AF%E7%9A%84%E5%8E%9F%E5%9B%A0%E6%98%AF%E4%BB%80%E4%B9%88)

##### [18.3.6 继承和委派有什么分别,在决定使用继承或者委派的时候需要考虑什么](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#740%E7%BB%A7%E6%89%BF%E5%92%8C%E5%A7%94%E6%B4%BE%E6%9C%89%E4%BB%80%E4%B9%88%E5%88%86%E5%88%AB%E5%9C%A8%E5%86%B3%E5%AE%9A%E4%BD%BF%E7%94%A8%E7%BB%A7%E6%89%BF%E6%88%96%E8%80%85%E5%A7%94%E6%B4%BE%E7%9A%84%E6%97%B6%E5%80%99%E9%9C%80%E8%A6%81%E8%80%83%E8%99%91%E4%BB%80%E4%B9%88)

##### [18.3.7 指针和引用有什么分别;如果传引用比传指针安全,为什么?如果我使用常量指针难道不行吗?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#741%E6%8C%87%E9%92%88%E5%92%8C%E5%BC%95%E7%94%A8%E6%9C%89%E4%BB%80%E4%B9%88%E5%88%86%E5%88%AB%E5%A6%82%E6%9E%9C%E4%BC%A0%E5%BC%95%E7%94%A8%E6%AF%94%E4%BC%A0%E6%8C%87%E9%92%88%E5%AE%89%E5%85%A8%E4%B8%BA%E4%BB%80%E4%B9%88%E5%A6%82%E6%9E%9C%E6%88%91%E4%BD%BF%E7%94%A8%E5%B8%B8%E9%87%8F%E6%8C%87%E9%92%88%E9%9A%BE%E9%81%93%E4%B8%8D%E8%A1%8C%E5%90%97)

##### [18.3.8 参数传递有几种方式;实现多态参数传递采用什么方式,如果没有使用某种方式原因是什么](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#742%E5%8F%82%E6%95%B0%E4%BC%A0%E9%80%92%E6%9C%89%E5%87%A0%E7%A7%8D%E6%96%B9%E5%BC%8F%E5%AE%9E%E7%8E%B0%E5%A4%9A%E6%80%81%E5%8F%82%E6%95%B0%E4%BC%A0%E9%80%92%E9%87%87%E7%94%A8%E4%BB%80%E4%B9%88%E6%96%B9%E5%BC%8F%E5%A6%82%E6%9E%9C%E6%B2%A1%E6%9C%89%E4%BD%BF%E7%94%A8%E6%9F%90%E7%A7%8D%E6%96%B9%E5%BC%8F%E5%8E%9F%E5%9B%A0%E6%98%AF%E4%BB%80%E4%B9%88)

##### [18.3.9 结合一个项目说明你怎样应用设计模式的理念。](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#743%E7%BB%93%E5%90%88%E4%B8%80%E4%B8%AA%E9%A1%B9%E7%9B%AE%E8%AF%B4%E6%98%8E%E4%BD%A0%E6%80%8E%E6%A0%B7%E5%BA%94%E7%94%A8%E8%AE%BE%E8%AE%A1%E6%A8%A1%E5%BC%8F%E7%9A%84%E7%90%86%E5%BF%B5)

##### [18.4.1 介绍一下你对设计模式的理解。(这个过程中有很多很细节的问题随机问的)](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#744%E4%BB%8B%E7%BB%8D%E4%B8%80%E4%B8%8B%E4%BD%A0%E5%AF%B9%E8%AE%BE%E8%AE%A1%E6%A8%A1%E5%BC%8F%E7%9A%84%E7%90%86%E8%A7%A3%E8%BF%99%E4%B8%AA%E8%BF%87%E7%A8%8B%E4%B8%AD%E6%9C%89%E5%BE%88%E5%A4%9A%E5%BE%88%E7%BB%86%E8%8A%82%E7%9A%84%E9%97%AE%E9%A2%98%E9%9A%8F%E6%9C%BA%E9%97%AE%E7%9A%84)

##### [18.4.2 C++和C定义结构的分别是什么。](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#745c%E5%92%8Cc%E5%AE%9A%E4%B9%89%E7%BB%93%E6%9E%84%E7%9A%84%E5%88%86%E5%88%AB%E6%98%AF%E4%BB%80%E4%B9%88)

##### [18.4.3 构造函数可否是虚汗数,为什么?析构函数呢,可否是纯虚的呢?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#746%E6%9E%84%E9%80%A0%E5%87%BD%E6%95%B0%E5%8F%AF%E5%90%A6%E6%98%AF%E8%99%9A%E6%B1%97%E6%95%B0%E4%B8%BA%E4%BB%80%E4%B9%88%E6%9E%90%E6%9E%84%E5%87%BD%E6%95%B0%E5%91%A2%E5%8F%AF%E5%90%A6%E6%98%AF%E7%BA%AF%E8%99%9A%E7%9A%84%E5%91%A2)

##### [18.4.4 拷贝构造函数相关问题,深拷贝,浅拷贝,临时对象等。](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#747%E6%8B%B7%E8%B4%9D%E6%9E%84%E9%80%A0%E5%87%BD%E6%95%B0%E7%9B%B8%E5%85%B3%E9%97%AE%E9%A2%98%E6%B7%B1%E6%8B%B7%E8%B4%9D%E6%B5%85%E6%8B%B7%E8%B4%9D%E4%B8%B4%E6%97%B6%E5%AF%B9%E8%B1%A1%E7%AD%89)

##### [18.4.5 结合1个你认为比较能体现OOP思想的项目,用UML来描述。](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#748%E7%BB%93%E5%90%881%E4%B8%AA%E4%BD%A0%E8%AE%A4%E4%B8%BA%E6%AF%94%E8%BE%83%E8%83%BD%E4%BD%93%E7%8E%B0oop%E6%80%9D%E6%83%B3%E7%9A%84%E9%A1%B9%E7%9B%AE%E7%94%A8uml%E6%9D%A5%E6%8F%8F%E8%BF%B0)

##### [18.4.6 基类的有1个虚函数,子类还需要申明为virtual吗?为什么。](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#749%E5%9F%BA%E7%B1%BB%E7%9A%84%E6%9C%891%E4%B8%AA%E8%99%9A%E5%87%BD%E6%95%B0%E5%AD%90%E7%B1%BB%E8%BF%98%E9%9C%80%E8%A6%81%E7%94%B3%E6%98%8E%E4%B8%BAvirtual%E5%90%97%E4%B8%BA%E4%BB%80%E4%B9%88)

##### [18.4.7 C也可以通过精心封装某些函数功能实现重用,那C++的类有什么优点吗,难道仅仅是为实现重用。](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#750c%E4%B9%9F%E5%8F%AF%E4%BB%A5%E9%80%9A%E8%BF%87%E7%B2%BE%E5%BF%83%E5%B0%81%E8%A3%85%E6%9F%90%E4%BA%9B%E5%87%BD%E6%95%B0%E5%8A%9F%E8%83%BD%E5%AE%9E%E7%8E%B0%E9%87%8D%E7%94%A8%E9%82%A3c%E7%9A%84%E7%B1%BB%E6%9C%89%E4%BB%80%E4%B9%88%E4%BC%98%E7%82%B9%E5%90%97%E9%9A%BE%E9%81%93%E4%BB%85%E4%BB%85%E6%98%AF%E4%B8%BA%E5%AE%9E%E7%8E%B0%E9%87%8D%E7%94%A8)

##### [18.4.8 C++特点是什么,如何实现多态?画出基类和子类在内存中的相互关系。](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#751c%E7%89%B9%E7%82%B9%E6%98%AF%E4%BB%80%E4%B9%88%E5%A6%82%E4%BD%95%E5%AE%9E%E7%8E%B0%E5%A4%9A%E6%80%81%E7%94%BB%E5%87%BA%E5%9F%BA%E7%B1%BB%E5%92%8C%E5%AD%90%E7%B1%BB%E5%9C%A8%E5%86%85%E5%AD%98%E4%B8%AD%E7%9A%84%E7%9B%B8%E4%BA%92%E5%85%B3%E7%B3%BB)

##### [18.4.9 为什么要引入抽象基类和纯虚函数?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#752%E4%B8%BA%E4%BB%80%E4%B9%88%E8%A6%81%E5%BC%95%E5%85%A5%E6%8A%BD%E8%B1%A1%E5%9F%BA%E7%B1%BB%E5%92%8C%E7%BA%AF%E8%99%9A%E5%87%BD%E6%95%B0)

##### [18.5.1 介绍一下模板和容器。如何实现?(也许会让你当场举例实现)](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#753%E4%BB%8B%E7%BB%8D%E4%B8%80%E4%B8%8B%E6%A8%A1%E6%9D%BF%E5%92%8C%E5%AE%B9%E5%99%A8%E5%A6%82%E4%BD%95%E5%AE%9E%E7%8E%B0%E4%B9%9F%E8%AE%B8%E4%BC%9A%E8%AE%A9%E4%BD%A0%E5%BD%93%E5%9C%BA%E4%B8%BE%E4%BE%8B%E5%AE%9E%E7%8E%B0)

##### [18.5.2 你如何理解MVC。简单举例来说明其应用。](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#754%E4%BD%A0%E5%A6%82%E4%BD%95%E7%90%86%E8%A7%A3mvc%E7%AE%80%E5%8D%95%E4%B8%BE%E4%BE%8B%E6%9D%A5%E8%AF%B4%E6%98%8E%E5%85%B6%E5%BA%94%E7%94%A8)

##### [18.5.3 什么是并行计算?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#756%E4%BB%80%E4%B9%88%E6%98%AF%E5%B9%B6%E8%A1%8C%E8%AE%A1%E7%AE%97)

##### [18.5.4 与10.110.12.29mask 255.255.255.224属于同一网段的主机IP地址有哪些?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#757%E4%B8%8E101101229mask-255255255224%E5%B1%9E%E4%BA%8E%E5%90%8C%E4%B8%80%E7%BD%91%E6%AE%B5%E7%9A%84%E4%B8%BB%E6%9C%BAip%E5%9C%B0%E5%9D%80%E6%9C%89%E5%93%AA%E4%BA%9B)

##### [18.5.5 讲一讲Makefile的内容.](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#758%E8%AE%B2%E4%B8%80%E8%AE%B2makefile%E7%9A%84%E5%86%85%E5%AE%B9)

##### [18.5.6 讲一讲C++的内联函数](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#759%E8%AE%B2%E4%B8%80%E8%AE%B2c%E7%9A%84%E5%86%85%E8%81%94%E5%87%BD%E6%95%B0)

##### [18.5.7 vector, deque, list, set, map底层数据结构 vector(向量)——STL中标准而安全的数组。只能在vector 的“前面”增加数据。](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#760vector-deque-list-set-map%E5%BA%95%E5%B1%82%E6%95%B0%E6%8D%AE%E7%BB%93%E6%9E%84-vector%E5%90%91%E9%87%8Fstl%E4%B8%AD%E6%A0%87%E5%87%86%E8%80%8C%E5%AE%89%E5%85%A8%E7%9A%84%E6%95%B0%E7%BB%84%E5%8F%AA%E8%83%BD%E5%9C%A8vector-%E7%9A%84%E5%89%8D%E9%9D%A2%E5%A2%9E%E5%8A%A0%E6%95%B0%E6%8D%AE)

##### [18.5.8 宏定义的优缺点](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#761%E5%AE%8F%E5%AE%9A%E4%B9%89%E7%9A%84%E4%BC%98%E7%BC%BA%E7%82%B9)

##### [18.5.9 bfs和dfs如何遍历](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#762bfs%E5%92%8Cdfs%E5%A6%82%E4%BD%95%E9%81%8D%E5%8E%86)

##### [18.6.1 CPU如果访问内存?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#763cpu%E5%A6%82%E6%9E%9C%E8%AE%BF%E9%97%AE%E5%86%85%E5%AD%98)

##### [18.6.2 找出在A数组中,B数组中没有的数字,在B数组中,A数组中没有的数字](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#764%E6%89%BE%E5%87%BA%E5%9C%A8a%E6%95%B0%E7%BB%84%E4%B8%ADb%E6%95%B0%E7%BB%84%E4%B8%AD%E6%B2%A1%E6%9C%89%E7%9A%84%E6%95%B0%E5%AD%97%E5%9C%A8b%E6%95%B0%E7%BB%84%E4%B8%ADa%E6%95%B0%E7%BB%84%E4%B8%AD%E6%B2%A1%E6%9C%89%E7%9A%84%E6%95%B0%E5%AD%97)

##### [18.6.3 在C++ 程序中调用被C 编译器编译后的函数,为什么要加extern “C”?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#765%E5%9C%A8c-%E7%A8%8B%E5%BA%8F%E4%B8%AD%E8%B0%83%E7%94%A8%E8%A2%ABc-%E7%BC%96%E8%AF%91%E5%99%A8%E7%BC%96%E8%AF%91%E5%90%8E%E7%9A%84%E5%87%BD%E6%95%B0%E4%B8%BA%E4%BB%80%E4%B9%88%E8%A6%81%E5%8A%A0extern-c)

##### [18.6.4 头文件中的ifndef/define/endif有什么作用?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#766%E5%A4%B4%E6%96%87%E4%BB%B6%E4%B8%AD%E7%9A%84ifndefdefineendif%E6%9C%89%E4%BB%80%E4%B9%88%E4%BD%9C%E7%94%A8)

##### [18.6.5 #include 与 #include "file.h"的区别?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#767includefileh-%E4%B8%8E-include-fileh%E7%9A%84%E5%8C%BA%E5%88%AB)

##### [18.6.6 评价一下C/C++各自的特点](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#768%E8%AF%84%E4%BB%B7%E4%B8%80%E4%B8%8Bcc%E5%90%84%E8%87%AA%E7%9A%84%E7%89%B9%E7%82%B9)

##### [18.6.7 const 有什么用途?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#769const-%E6%9C%89%E4%BB%80%E4%B9%88%E7%94%A8%E9%80%94)

##### [18.6.8 const和#define有什么区别?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#770const%E5%92%8Cdefine%E6%9C%89%E4%BB%80%E4%B9%88%E5%8C%BA%E5%88%AB)

##### [18.6.9 关于sizeof小结的。](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#771%E5%85%B3%E4%BA%8Esizeof%E5%B0%8F%E7%BB%93%E7%9A%84)

##### [18.7.1 sizeof与strlen的区别?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#772sizeof%E4%B8%8Estrlen%E7%9A%84%E5%8C%BA%E5%88%AB)

##### [18.7.2 指针和引用的区别?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#773%E6%8C%87%E9%92%88%E5%92%8C%E5%BC%95%E7%94%A8%E7%9A%84%E5%8C%BA%E5%88%AB)

##### [18.7.3 数组和指针的区别?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#774%E6%95%B0%E7%BB%84%E5%92%8C%E6%8C%87%E9%92%88%E7%9A%84%E5%8C%BA%E5%88%AB)

##### [18.7.4 空指针和悬垂指针的区别?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#775%E7%A9%BA%E6%8C%87%E9%92%88%E5%92%8C%E6%82%AC%E5%9E%82%E6%8C%87%E9%92%88%E7%9A%84%E5%8C%BA%E5%88%AB)

##### [18.7.5 C++中有malloc/free,为什么还有new/delete?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#776c%E4%B8%AD%E6%9C%89mallocfree%E4%B8%BA%E4%BB%80%E4%B9%88%E8%BF%98%E6%9C%89newdelete)

##### [18.7.6 什么是智能指针?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#777%E4%BB%80%E4%B9%88%E6%98%AF%E6%99%BA%E8%83%BD%E6%8C%87%E9%92%88)

##### [18.7.7 面向对象技术的基本概念是什么,三个基本特征是什么?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#778%E9%9D%A2%E5%90%91%E5%AF%B9%E8%B1%A1%E6%8A%80%E6%9C%AF%E7%9A%84%E5%9F%BA%E6%9C%AC%E6%A6%82%E5%BF%B5%E6%98%AF%E4%BB%80%E4%B9%88%E4%B8%89%E4%B8%AA%E5%9F%BA%E6%9C%AC%E7%89%B9%E5%BE%81%E6%98%AF%E4%BB%80%E4%B9%88)

##### [18.7.8 C++空类默认有哪些成员函数?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#779c%E7%A9%BA%E7%B1%BB%E9%BB%98%E8%AE%A4%E6%9C%89%E5%93%AA%E4%BA%9B%E6%88%90%E5%91%98%E5%87%BD%E6%95%B0)

##### [18.7.9 哪一种成员变量可以在一个类的实例之间共享?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#780%E5%93%AA%E4%B8%80%E7%A7%8D%E6%88%90%E5%91%98%E5%8F%98%E9%87%8F%E5%8F%AF%E4%BB%A5%E5%9C%A8%E4%B8%80%E4%B8%AA%E7%B1%BB%E7%9A%84%E5%AE%9E%E4%BE%8B%E4%B9%8B%E9%97%B4%E5%85%B1%E4%BA%AB)

##### [18.8.1 继承层次中,为什么基类析构函数是虚函数?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#781%E7%BB%A7%E6%89%BF%E5%B1%82%E6%AC%A1%E4%B8%AD%E4%B8%BA%E4%BB%80%E4%B9%88%E5%9F%BA%E7%B1%BB%E6%9E%90%E6%9E%84%E5%87%BD%E6%95%B0%E6%98%AF%E8%99%9A%E5%87%BD%E6%95%B0)

##### [18.8.2 为什么构造函数不能为虚函数?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#782%E4%B8%BA%E4%BB%80%E4%B9%88%E6%9E%84%E9%80%A0%E5%87%BD%E6%95%B0%E4%B8%8D%E8%83%BD%E4%B8%BA%E8%99%9A%E5%87%BD%E6%95%B0)

##### [18.8.3 如果虚函数是有效的,那为什么不把所有函数设为虚函数?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#783%E5%A6%82%E6%9E%9C%E8%99%9A%E5%87%BD%E6%95%B0%E6%98%AF%E6%9C%89%E6%95%88%E7%9A%84%E9%82%A3%E4%B8%BA%E4%BB%80%E4%B9%88%E4%B8%8D%E6%8A%8A%E6%89%80%E6%9C%89%E5%87%BD%E6%95%B0%E8%AE%BE%E4%B8%BA%E8%99%9A%E5%87%BD%E6%95%B0)

##### [18.8.4 什么是多态?多态有什么作用?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#784%E4%BB%80%E4%B9%88%E6%98%AF%E5%A4%9A%E6%80%81%E5%A4%9A%E6%80%81%E6%9C%89%E4%BB%80%E4%B9%88%E4%BD%9C%E7%94%A8)

##### [18.8.5 重载和覆盖有什么区别?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#785%E9%87%8D%E8%BD%BD%E5%92%8C%E8%A6%86%E7%9B%96%E6%9C%89%E4%BB%80%E4%B9%88%E5%8C%BA%E5%88%AB)

##### [18.8.6 公有继承、受保护继承、私有继承](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#786%E5%85%AC%E6%9C%89%E7%BB%A7%E6%89%BF%E5%8F%97%E4%BF%9D%E6%8A%A4%E7%BB%A7%E6%89%BF%E7%A7%81%E6%9C%89%E7%BB%A7%E6%89%BF)

##### [18.8.7 有哪几种情况只能用构造函数初始化列表而不能用赋值初始化?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#787%E6%9C%89%E5%93%AA%E5%87%A0%E7%A7%8D%E6%83%85%E5%86%B5%E5%8F%AA%E8%83%BD%E7%94%A8%E6%9E%84%E9%80%A0%E5%87%BD%E6%95%B0%E5%88%9D%E5%A7%8B%E5%8C%96%E5%88%97%E8%A1%A8%E8%80%8C%E4%B8%8D%E8%83%BD%E7%94%A8%E8%B5%8B%E5%80%BC%E5%88%9D%E5%A7%8B%E5%8C%96)

##### [18.8.8 什么是虚指针?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#788%E4%BB%80%E4%B9%88%E6%98%AF%E8%99%9A%E6%8C%87%E9%92%88)

##### [18.8.9 C++如何阻止一个类被实例化?一般在什么时候将构造函数声明为private?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#789c%E5%A6%82%E4%BD%95%E9%98%BB%E6%AD%A2%E4%B8%80%E4%B8%AA%E7%B1%BB%E8%A2%AB%E5%AE%9E%E4%BE%8B%E5%8C%96%E4%B8%80%E8%88%AC%E5%9C%A8%E4%BB%80%E4%B9%88%E6%97%B6%E5%80%99%E5%B0%86%E6%9E%84%E9%80%A0%E5%87%BD%E6%95%B0%E5%A3%B0%E6%98%8E%E4%B8%BAprivate)

##### [18.9.1 main函数执行之前会执行什么?执行之后还能执行代码吗?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#790main%E5%87%BD%E6%95%B0%E6%89%A7%E8%A1%8C%E4%B9%8B%E5%89%8D%E4%BC%9A%E6%89%A7%E8%A1%8C%E4%BB%80%E4%B9%88%E6%89%A7%E8%A1%8C%E4%B9%8B%E5%90%8E%E8%BF%98%E8%83%BD%E6%89%A7%E8%A1%8C%E4%BB%A3%E7%A0%81%E5%90%97)

##### [18.9.2 请描述进程和线程的区别?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#791%E8%AF%B7%E6%8F%8F%E8%BF%B0%E8%BF%9B%E7%A8%8B%E5%92%8C%E7%BA%BF%E7%A8%8B%E7%9A%84%E5%8C%BA%E5%88%AB)

##### [18.9.3 进程间如何通信?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#792%E8%BF%9B%E7%A8%8B%E9%97%B4%E5%A6%82%E4%BD%95%E9%80%9A%E4%BF%A1)

##### [18.9.4 在网络编程中涉及并发服务器,使用多进程与多线程的区别?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#793%E5%9C%A8%E7%BD%91%E7%BB%9C%E7%BC%96%E7%A8%8B%E4%B8%AD%E6%B6%89%E5%8F%8A%E5%B9%B6%E5%8F%91%E6%9C%8D%E5%8A%A1%E5%99%A8%E4%BD%BF%E7%94%A8%E5%A4%9A%E8%BF%9B%E7%A8%8B%E4%B8%8E%E5%A4%9A%E7%BA%BF%E7%A8%8B%E7%9A%84%E5%8C%BA%E5%88%AB)

##### [18.9.5 TCP和UDP有什么区别。](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#794tcp%E5%92%8Cudp%E6%9C%89%E4%BB%80%E4%B9%88%E5%8C%BA%E5%88%AB)

##### [18.9.6 经常要操作的内存分为那几个类别?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#796%E7%BB%8F%E5%B8%B8%E8%A6%81%E6%93%8D%E4%BD%9C%E7%9A%84%E5%86%85%E5%AD%98%E5%88%86%E4%B8%BA%E9%82%A3%E5%87%A0%E4%B8%AA%E7%B1%BB%E5%88%AB)

##### [18.9.7 请讲述堆和栈的区别。](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#797%E8%AF%B7%E8%AE%B2%E8%BF%B0%E5%A0%86%E5%92%8C%E6%A0%88%E7%9A%84%E5%8C%BA%E5%88%AB)

##### [18.9.8 全局变量放在数据段,内部变量static int count;](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#798%E5%85%A8%E5%B1%80%E5%8F%98%E9%87%8F%E6%94%BE%E5%9C%A8%E6%95%B0%E6%8D%AE%E6%AE%B5%E5%86%85%E9%83%A8%E5%8F%98%E9%87%8Fstatic-int-count)

##### [18.9.9 类使用static成员的优点,如何访问?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#801%E7%B1%BB%E4%BD%BF%E7%94%A8static%E6%88%90%E5%91%98%E7%9A%84%E4%BC%98%E7%82%B9%E5%A6%82%E4%BD%95%E8%AE%BF%E9%97%AE)

##### [19.1.1 static数据成员和static成员函数](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#802static%E6%95%B0%E6%8D%AE%E6%88%90%E5%91%98%E5%92%8Cstatic%E6%88%90%E5%91%98%E5%87%BD%E6%95%B0)

##### [19.1.2 如何引用一个已经定义过的全局变量?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#804%E5%A6%82%E4%BD%95%E5%BC%95%E7%94%A8%E4%B8%80%E4%B8%AA%E5%B7%B2%E7%BB%8F%E5%AE%9A%E4%B9%89%E8%BF%87%E7%9A%84%E5%85%A8%E5%B1%80%E5%8F%98%E9%87%8F)

##### [19.1.3 static关键字的作用](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#805static%E5%85%B3%E9%94%AE%E5%AD%97%E7%9A%84%E4%BD%9C%E7%94%A8)

##### [19.1.4 多态类中的虚函数表是 Compile-Time,还是 Run-Time时建立的?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#808%E5%A4%9A%E6%80%81%E7%B1%BB%E4%B8%AD%E7%9A%84%E8%99%9A%E5%87%BD%E6%95%B0%E8%A1%A8%E6%98%AF-compile-time%E8%BF%98%E6%98%AF-run-time%E6%97%B6%E5%BB%BA%E7%AB%8B%E7%9A%84)

##### [19.1.5 一个父类写了一个 virtual 函数,如果子类覆盖它的函数不加 virtual ,也能实现多态?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#809%E4%B8%80%E4%B8%AA%E7%88%B6%E7%B1%BB%E5%86%99%E4%BA%86%E4%B8%80%E4%B8%AA-virtual-%E5%87%BD%E6%95%B0%E5%A6%82%E6%9E%9C%E5%AD%90%E7%B1%BB%E8%A6%86%E7%9B%96%E5%AE%83%E7%9A%84%E5%87%BD%E6%95%B0%E4%B8%8D%E5%8A%A0-virtual-%E4%B9%9F%E8%83%BD%E5%AE%9E%E7%8E%B0%E5%A4%9A%E6%80%81)

##### [19.1.6 完成字符串拷贝可以使用 sprintf、strcpy 及 memcpy 函数,请问这些函数有什么区别,你喜欢使用哪个,为什么?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#810%E5%AE%8C%E6%88%90%E5%AD%97%E7%AC%A6%E4%B8%B2%E6%8B%B7%E8%B4%9D%E5%8F%AF%E4%BB%A5%E4%BD%BF%E7%94%A8-sprintfstrcpy-%E5%8F%8A-memcpy-%E5%87%BD%E6%95%B0%E8%AF%B7%E9%97%AE%E8%BF%99%E4%BA%9B%E5%87%BD%E6%95%B0%E6%9C%89%E4%BB%80%E4%B9%88%E5%8C%BA%E5%88%AB%E4%BD%A0%E5%96%9C%E6%AC%A2%E4%BD%BF%E7%94%A8%E5%93%AA%E4%B8%AA%E4%B8%BA%E4%BB%80%E4%B9%88)

##### [19.1.7 应用程序在运行时的内存包括代码区和数据区,其中数据区又包括哪些部分?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#811%E5%BA%94%E7%94%A8%E7%A8%8B%E5%BA%8F%E5%9C%A8%E8%BF%90%E8%A1%8C%E6%97%B6%E7%9A%84%E5%86%85%E5%AD%98%E5%8C%85%E6%8B%AC%E4%BB%A3%E7%A0%81%E5%8C%BA%E5%92%8C%E6%95%B0%E6%8D%AE%E5%8C%BA%E5%85%B6%E4%B8%AD%E6%95%B0%E6%8D%AE%E5%8C%BA%E5%8F%88%E5%8C%85%E6%8B%AC%E5%93%AA%E4%BA%9B%E9%83%A8%E5%88%86)

##### [19.1.8 C++函数中值的传递方式有哪几种?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#812c%E5%87%BD%E6%95%B0%E4%B8%AD%E5%80%BC%E7%9A%84%E4%BC%A0%E9%80%92%E6%96%B9%E5%BC%8F%E6%9C%89%E5%93%AA%E5%87%A0%E7%A7%8D)

##### [19.1.9 C++里面是不是所有的动作都是main()引起的?如果不是,请举例.](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#813c%E9%87%8C%E9%9D%A2%E6%98%AF%E4%B8%8D%E6%98%AF%E6%89%80%E6%9C%89%E7%9A%84%E5%8A%A8%E4%BD%9C%E9%83%BD%E6%98%AFmain%E5%BC%95%E8%B5%B7%E7%9A%84%E5%A6%82%E6%9E%9C%E4%B8%8D%E6%98%AF%E8%AF%B7%E4%B8%BE%E4%BE%8B)

##### [19.2.1 下列哪两个是等同的](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#814%E4%B8%8B%E5%88%97%E5%93%AA%E4%B8%A4%E4%B8%AA%E6%98%AF%E7%AD%89%E5%90%8C%E7%9A%84)

##### [19.2.2 内联函数在编译时是否做参数类型检查?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#815%E5%86%85%E8%81%94%E5%87%BD%E6%95%B0%E5%9C%A8%E7%BC%96%E8%AF%91%E6%97%B6%E6%98%AF%E5%90%A6%E5%81%9A%E5%8F%82%E6%95%B0%E7%B1%BB%E5%9E%8B%E6%A3%80%E6%9F%A5)

##### [19.2.3 全局变量和局部变量有什么区别?实怎么实现的?操作系统和编译器是怎么知道的?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#816%E5%85%A8%E5%B1%80%E5%8F%98%E9%87%8F%E5%92%8C%E5%B1%80%E9%83%A8%E5%8F%98%E9%87%8F%E6%9C%89%E4%BB%80%E4%B9%88%E5%8C%BA%E5%88%AB%E5%AE%9E%E6%80%8E%E4%B9%88%E5%AE%9E%E7%8E%B0%E7%9A%84%E6%93%8D%E4%BD%9C%E7%B3%BB%E7%BB%9F%E5%92%8C%E7%BC%96%E8%AF%91%E5%99%A8%E6%98%AF%E6%80%8E%E4%B9%88%E7%9F%A5%E9%81%93%E7%9A%84)

##### [19.2.4 有 A 、 B 、 C 、 D 四个人,要在夜里过一座桥。他们通过这座桥分别需要耗时 1 、 2 、 5 、 10 分钟,只有一支手电,并且同时最多只能两个人一起过桥。请问,如何安排,能够在 17 分钟内这四个人都过桥?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#817%E6%9C%89-a--b--c--d-%E5%9B%9B%E4%B8%AA%E4%BA%BA%E8%A6%81%E5%9C%A8%E5%A4%9C%E9%87%8C%E8%BF%87%E4%B8%80%E5%BA%A7%E6%A1%A5%E4%BB%96%E4%BB%AC%E9%80%9A%E8%BF%87%E8%BF%99%E5%BA%A7%E6%A1%A5%E5%88%86%E5%88%AB%E9%9C%80%E8%A6%81%E8%80%97%E6%97%B6-1--2--5--10-%E5%88%86%E9%92%9F%E5%8F%AA%E6%9C%89%E4%B8%80%E6%94%AF%E6%89%8B%E7%94%B5%E5%B9%B6%E4%B8%94%E5%90%8C%E6%97%B6%E6%9C%80%E5%A4%9A%E5%8F%AA%E8%83%BD%E4%B8%A4%E4%B8%AA%E4%BA%BA%E4%B8%80%E8%B5%B7%E8%BF%87%E6%A1%A5%E8%AF%B7%E9%97%AE%E5%A6%82%E4%BD%95%E5%AE%89%E6%8E%92%E8%83%BD%E5%A4%9F%E5%9C%A8-17-%E5%88%86%E9%92%9F%E5%86%85%E8%BF%99%E5%9B%9B%E4%B8%AA%E4%BA%BA%E9%83%BD%E8%BF%87%E6%A1%A5)

##### [19.2.5 static全局变量与普通的全局变量有什么区别?static局部变量和普通局部变量有什么区别?static函数与普通函数有什么区别?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#818static%E5%85%A8%E5%B1%80%E5%8F%98%E9%87%8F%E4%B8%8E%E6%99%AE%E9%80%9A%E7%9A%84%E5%85%A8%E5%B1%80%E5%8F%98%E9%87%8F%E6%9C%89%E4%BB%80%E4%B9%88%E5%8C%BA%E5%88%ABstatic%E5%B1%80%E9%83%A8%E5%8F%98%E9%87%8F%E5%92%8C%E6%99%AE%E9%80%9A%E5%B1%80%E9%83%A8%E5%8F%98%E9%87%8F%E6%9C%89%E4%BB%80%E4%B9%88%E5%8C%BA%E5%88%ABstatic%E5%87%BD%E6%95%B0%E4%B8%8E%E6%99%AE%E9%80%9A%E5%87%BD%E6%95%B0%E6%9C%89%E4%BB%80%E4%B9%88%E5%8C%BA%E5%88%AB)

##### [19.2.6 对于一个频繁使用的短小函数,在C语言中应用什么实现,在C++中应用什么实现?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#820%E5%AF%B9%E4%BA%8E%E4%B8%80%E4%B8%AA%E9%A2%91%E7%B9%81%E4%BD%BF%E7%94%A8%E7%9A%84%E7%9F%AD%E5%B0%8F%E5%87%BD%E6%95%B0%E5%9C%A8c%E8%AF%AD%E8%A8%80%E4%B8%AD%E5%BA%94%E7%94%A8%E4%BB%80%E4%B9%88%E5%AE%9E%E7%8E%B0%E5%9C%A8c%E4%B8%AD%E5%BA%94%E7%94%A8%E4%BB%80%E4%B9%88%E5%AE%9E%E7%8E%B0)

##### [19.2.7 有1,2,....一直到n的无序数组,求排序算法,并且要求时间复杂度为O(n),空间复杂度O(1),使用交换,而且一次只能交换两个数。](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#821%E6%9C%8912%E4%B8%80%E7%9B%B4%E5%88%B0n%E7%9A%84%E6%97%A0%E5%BA%8F%E6%95%B0%E7%BB%84%E6%B1%82%E6%8E%92%E5%BA%8F%E7%AE%97%E6%B3%95%E5%B9%B6%E4%B8%94%E8%A6%81%E6%B1%82%E6%97%B6%E9%97%B4%E5%A4%8D%E6%9D%82%E5%BA%A6%E4%B8%BAon%E7%A9%BA%E9%97%B4%E5%A4%8D%E6%9D%82%E5%BA%A6o1%E4%BD%BF%E7%94%A8%E4%BA%A4%E6%8D%A2%E8%80%8C%E4%B8%94%E4%B8%80%E6%AC%A1%E5%8F%AA%E8%83%BD%E4%BA%A4%E6%8D%A2%E4%B8%A4%E4%B8%AA%E6%95%B0)

##### [19.2.8 sizeof相关系列问题, const相关系列问题](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#822sizeof%E7%9B%B8%E5%85%B3%E7%B3%BB%E5%88%97%E9%97%AE%E9%A2%98-const%E7%9B%B8%E5%85%B3%E7%B3%BB%E5%88%97%E9%97%AE%E9%A2%98)

##### [19.2.9 写出二分查找的代码](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#823%E5%86%99%E5%87%BA%E4%BA%8C%E5%88%86%E6%9F%A5%E6%89%BE%E7%9A%84%E4%BB%A3%E7%A0%81)

##### [19.3.1 写出在母串中查找子串出现次数的代码.](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#824%E5%86%99%E5%87%BA%E5%9C%A8%E6%AF%8D%E4%B8%B2%E4%B8%AD%E6%9F%A5%E6%89%BE%E5%AD%90%E4%B8%B2%E5%87%BA%E7%8E%B0%E6%AC%A1%E6%95%B0%E7%9A%84%E4%BB%A3%E7%A0%81)

##### [19.3.2 查找第一个匹配子串位置,如果返回的是s1长度len1表示没有找到](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#825%E6%9F%A5%E6%89%BE%E7%AC%AC%E4%B8%80%E4%B8%AA%E5%8C%B9%E9%85%8D%E5%AD%90%E4%B8%B2%E4%BD%8D%E7%BD%AE%E5%A6%82%E6%9E%9C%E8%BF%94%E5%9B%9E%E7%9A%84%E6%98%AFs1%E9%95%BF%E5%BA%A6len1%E8%A1%A8%E7%A4%BA%E6%B2%A1%E6%9C%89%E6%89%BE%E5%88%B0)

##### [19.3.3 实现strcpy函数](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#826%E5%AE%9E%E7%8E%B0strcpy%E5%87%BD%E6%95%B0)

##### [19.3.4 实现strcmp函数](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#827%E5%AE%9E%E7%8E%B0strcmp%E5%87%BD%E6%95%B0)

##### [19.3.5 实现字符串翻转](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#828%E5%AE%9E%E7%8E%B0%E5%AD%97%E7%AC%A6%E4%B8%B2%E7%BF%BB%E8%BD%AC)

##### [19.3.6 用指针的方法,将字符串“ABCD1234efgh”前后对调显示](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#829%E7%94%A8%E6%8C%87%E9%92%88%E7%9A%84%E6%96%B9%E6%B3%95%E5%B0%86%E5%AD%97%E7%AC%A6%E4%B8%B2abcd1234efgh%E5%89%8D%E5%90%8E%E5%AF%B9%E8%B0%83%E6%98%BE%E7%A4%BA)

##### [19.3.7 给定字符串A和B,输出A和B中的最大公共子串。比如A="aocdfe" B="pmcdfa" 则输出"cdf"](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#830%E7%BB%99%E5%AE%9A%E5%AD%97%E7%AC%A6%E4%B8%B2a%E5%92%8Cb%E8%BE%93%E5%87%BAa%E5%92%8Cb%E4%B8%AD%E7%9A%84%E6%9C%80%E5%A4%A7%E5%85%AC%E5%85%B1%E5%AD%90%E4%B8%B2%E6%AF%94%E5%A6%82aaocdfe-bpmcdfa-%E5%88%99%E8%BE%93%E5%87%BAcdf)

##### [19.3.8 判断一个字符串是不是回文](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#831%E5%88%A4%E6%96%AD%E4%B8%80%E4%B8%AA%E5%AD%97%E7%AC%A6%E4%B8%B2%E6%98%AF%E4%B8%8D%E6%98%AF%E5%9B%9E%E6%96%87)

##### [19.3.9 写函数完成内存的拷贝](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#832%E5%86%99%E5%87%BD%E6%95%B0%E5%AE%8C%E6%88%90%E5%86%85%E5%AD%98%E7%9A%84%E6%8B%B7%E8%B4%9D)

##### [19.4.1 写一个函数,它的原形是int continumax(char *outputstr,char *intputstr)](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#833%E5%86%99%E4%B8%80%E4%B8%AA%E5%87%BD%E6%95%B0%E5%AE%83%E7%9A%84%E5%8E%9F%E5%BD%A2%E6%98%AFint-continumaxchar-outputstrchar-intputstr)

##### [19.4.2 编写一个 C 函数,该函数在一个字符串中找到可能的最长的子字符串,且该字符串是由同一字符组成的](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#834%E7%BC%96%E5%86%99%E4%B8%80%E4%B8%AA-c-%E5%87%BD%E6%95%B0%E8%AF%A5%E5%87%BD%E6%95%B0%E5%9C%A8%E4%B8%80%E4%B8%AA%E5%AD%97%E7%AC%A6%E4%B8%B2%E4%B8%AD%E6%89%BE%E5%88%B0%E5%8F%AF%E8%83%BD%E7%9A%84%E6%9C%80%E9%95%BF%E7%9A%84%E5%AD%90%E5%AD%97%E7%AC%A6%E4%B8%B2%E4%B8%94%E8%AF%A5%E5%AD%97%E7%AC%A6%E4%B8%B2%E6%98%AF%E7%94%B1%E5%90%8C%E4%B8%80%E5%AD%97%E7%AC%A6%E7%BB%84%E6%88%90%E7%9A%84)

##### [19.4.3 写出快速排序或者某种排序算法代码](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#835%E5%86%99%E5%87%BA%E5%BF%AB%E9%80%9F%E6%8E%92%E5%BA%8F%E6%88%96%E8%80%85%E6%9F%90%E7%A7%8D%E6%8E%92%E5%BA%8F%E7%AE%97%E6%B3%95%E4%BB%A3%E7%A0%81)

##### [19.4.4 将一个单链表逆序](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#836%E5%B0%86%E4%B8%80%E4%B8%AA%E5%8D%95%E9%93%BE%E8%A1%A8%E9%80%86%E5%BA%8F)

##### [19.4.5 循环链表的节点对换和删除](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#837%E5%BE%AA%E7%8E%AF%E9%93%BE%E8%A1%A8%E7%9A%84%E8%8A%82%E7%82%B9%E5%AF%B9%E6%8D%A2%E5%92%8C%E5%88%A0%E9%99%A4)

##### [19.4.6 有双向循环链表结点定义为](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#838%E6%9C%89%E5%8F%8C%E5%90%91%E5%BE%AA%E7%8E%AF%E9%93%BE%E8%A1%A8%E7%BB%93%E7%82%B9%E5%AE%9A%E4%B9%89%E4%B8%BA)

##### [19.4.7 写出程序删除链表中的所有接点](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#839%E5%86%99%E5%87%BA%E7%A8%8B%E5%BA%8F%E5%88%A0%E9%99%A4%E9%93%BE%E8%A1%A8%E4%B8%AD%E7%9A%84%E6%89%80%E6%9C%89%E6%8E%A5%E7%82%B9)

##### [19.4.8 线形表a、b为两个有序升序的线形表,编写一程序,使两个有序线形表合并成一个有序升序线形表h](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#840%E7%BA%BF%E5%BD%A2%E8%A1%A8ab%E4%B8%BA%E4%B8%A4%E4%B8%AA%E6%9C%89%E5%BA%8F%E5%8D%87%E5%BA%8F%E7%9A%84%E7%BA%BF%E5%BD%A2%E8%A1%A8%E7%BC%96%E5%86%99%E4%B8%80%E7%A8%8B%E5%BA%8F%E4%BD%BF%E4%B8%A4%E4%B8%AA%E6%9C%89%E5%BA%8F%E7%BA%BF%E5%BD%A2%E8%A1%A8%E5%90%88%E5%B9%B6%E6%88%90%E4%B8%80%E4%B8%AA%E6%9C%89%E5%BA%8F%E5%8D%87%E5%BA%8F%E7%BA%BF%E5%BD%A2%E8%A1%A8h)

##### [19.4.9 怎么判断链表中是否有环?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#841%E6%80%8E%E4%B9%88%E5%88%A4%E6%96%AD%E9%93%BE%E8%A1%A8%E4%B8%AD%E6%98%AF%E5%90%A6%E6%9C%89%E7%8E%AF)

##### [19.5.1 static有什么用途?(请至少说明两种)](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#842static%E6%9C%89%E4%BB%80%E4%B9%88%E7%94%A8%E9%80%94%E8%AF%B7%E8%87%B3%E5%B0%91%E8%AF%B4%E6%98%8E%E4%B8%A4%E7%A7%8D)

##### [19.5.2 引用与指针有什么区别?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#843%E5%BC%95%E7%94%A8%E4%B8%8E%E6%8C%87%E9%92%88%E6%9C%89%E4%BB%80%E4%B9%88%E5%8C%BA%E5%88%AB)

##### [19.5.3 全局变量和局部变量在内存中是否有区别?如果有,是什么区别?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#844%E5%85%A8%E5%B1%80%E5%8F%98%E9%87%8F%E5%92%8C%E5%B1%80%E9%83%A8%E5%8F%98%E9%87%8F%E5%9C%A8%E5%86%85%E5%AD%98%E4%B8%AD%E6%98%AF%E5%90%A6%E6%9C%89%E5%8C%BA%E5%88%AB%E5%A6%82%E6%9E%9C%E6%9C%89%E6%98%AF%E4%BB%80%E4%B9%88%E5%8C%BA%E5%88%AB)

##### [19.5.4 static变量和static 函数各有什么特点?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#845static%E5%8F%98%E9%87%8F%E5%92%8Cstatic-%E5%87%BD%E6%95%B0%E5%90%84%E6%9C%89%E4%BB%80%E4%B9%88%E7%89%B9%E7%82%B9)

##### [19.5.5 static全局变量与普通的全局变量有什么区别?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#846static%E5%85%A8%E5%B1%80%E5%8F%98%E9%87%8F%E4%B8%8E%E6%99%AE%E9%80%9A%E7%9A%84%E5%85%A8%E5%B1%80%E5%8F%98%E9%87%8F%E6%9C%89%E4%BB%80%E4%B9%88%E5%8C%BA%E5%88%AB)

##### [19.5.6 static函数与普通函数有什么区别](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#847static%E5%87%BD%E6%95%B0%E4%B8%8E%E6%99%AE%E9%80%9A%E5%87%BD%E6%95%B0%E6%9C%89%E4%BB%80%E4%B9%88%E5%8C%BA%E5%88%AB)

##### [19.5.7 什么是平衡二叉树?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#848%E4%BB%80%E4%B9%88%E6%98%AF%E5%B9%B3%E8%A1%A1%E4%BA%8C%E5%8F%89%E6%A0%91)

##### [19.5.8 什么函数不能声明为虚函数?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#849%E4%BB%80%E4%B9%88%E5%87%BD%E6%95%B0%E4%B8%8D%E8%83%BD%E5%A3%B0%E6%98%8E%E4%B8%BA%E8%99%9A%E5%87%BD%E6%95%B0)

##### [19.5.9 写出float x 与“零值”比较的if语句](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#851%E5%86%99%E5%87%BAfloat-x-%E4%B8%8E%E9%9B%B6%E5%80%BC%E6%AF%94%E8%BE%83%E7%9A%84if%E8%AF%AD%E5%8F%A5)

##### [19.6.1 进程间通信的方式有?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#852%E8%BF%9B%E7%A8%8B%E9%97%B4%E9%80%9A%E4%BF%A1%E7%9A%84%E6%96%B9%E5%BC%8F%E6%9C%89)

##### [19.6.2 const 符号常量](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#853const-%E7%AC%A6%E5%8F%B7%E5%B8%B8%E9%87%8F)

##### [19.6.3 c和c++中的struct有什么不同?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#854c%E5%92%8Cc%E4%B8%AD%E7%9A%84struct%E6%9C%89%E4%BB%80%E4%B9%88%E4%B8%8D%E5%90%8C)

##### [19.6.4 纯虚函数如何定义?使用时应注意什么?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#855%E7%BA%AF%E8%99%9A%E5%87%BD%E6%95%B0%E5%A6%82%E4%BD%95%E5%AE%9A%E4%B9%89%E4%BD%BF%E7%94%A8%E6%97%B6%E5%BA%94%E6%B3%A8%E6%84%8F%E4%BB%80%E4%B9%88)

##### [19.6.5 数组和链表的区别](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#856%E6%95%B0%E7%BB%84%E5%92%8C%E9%93%BE%E8%A1%A8%E7%9A%84%E5%8C%BA%E5%88%AB)

##### [19.6.6 线程与进程的区别和联系? 线程是否具有相同的堆栈? dll是否有独立的堆栈?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#857%E7%BA%BF%E7%A8%8B%E4%B8%8E%E8%BF%9B%E7%A8%8B%E7%9A%84%E5%8C%BA%E5%88%AB%E5%92%8C%E8%81%94%E7%B3%BB-%E7%BA%BF%E7%A8%8B%E6%98%AF%E5%90%A6%E5%85%B7%E6%9C%89%E7%9B%B8%E5%90%8C%E7%9A%84%E5%A0%86%E6%A0%88-dll%E6%98%AF%E5%90%A6%E6%9C%89%E7%8B%AC%E7%AB%8B%E7%9A%84%E5%A0%86%E6%A0%88)

##### [19.6.7 一语句实现x是否为2的若干次幂的判断](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#858%E4%B8%80%E8%AF%AD%E5%8F%A5%E5%AE%9E%E7%8E%B0x%E6%98%AF%E5%90%A6%E4%B8%BA2%E7%9A%84%E8%8B%A5%E5%B9%B2%E6%AC%A1%E5%B9%82%E7%9A%84%E5%88%A4%E6%96%AD)

##### [19.6.8 计算结果题目](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#859%E8%AE%A1%E7%AE%97%E7%BB%93%E6%9E%9C%E9%A2%98%E7%9B%AE)

##### [19.6.9 输出下面程序结果](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#860%E8%BE%93%E5%87%BA%E4%B8%8B%E9%9D%A2%E7%A8%8B%E5%BA%8F%E7%BB%93%E6%9E%9C)

##### [19.7.1 写出程序运行结果](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#861%E5%86%99%E5%87%BA%E7%A8%8B%E5%BA%8F%E8%BF%90%E8%A1%8C%E7%BB%93%E6%9E%9C)

##### [19.7.2 求函数返回值,输入x=9999](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#862%E6%B1%82%E5%87%BD%E6%95%B0%E8%BF%94%E5%9B%9E%E5%80%BC%E8%BE%93%E5%85%A5x9999)

##### [19.7.3 用户输入M,N值,从1至N开始顺序循环数数,每数到M输出该数值,直至全部输出。写出C程序](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#863%E7%94%A8%E6%88%B7%E8%BE%93%E5%85%A5mn%E5%80%BC%E4%BB%8E1%E8%87%B3n%E5%BC%80%E5%A7%8B%E9%A1%BA%E5%BA%8F%E5%BE%AA%E7%8E%AF%E6%95%B0%E6%95%B0%E6%AF%8F%E6%95%B0%E5%88%B0m%E8%BE%93%E5%87%BA%E8%AF%A5%E6%95%B0%E5%80%BC%E7%9B%B4%E8%87%B3%E5%85%A8%E9%83%A8%E8%BE%93%E5%87%BA%E5%86%99%E5%87%BAc%E7%A8%8B%E5%BA%8F)

##### [19.7.4 有10亿个浮点数,求出其中最大的10000个 ,用了标准库的,不让用的话,只能自己写堆函数](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#864%E6%9C%8910%E4%BA%BF%E4%B8%AA%E6%B5%AE%E7%82%B9%E6%95%B0%E6%B1%82%E5%87%BA%E5%85%B6%E4%B8%AD%E6%9C%80%E5%A4%A7%E7%9A%8410000%E4%B8%AA-%E7%94%A8%E4%BA%86%E6%A0%87%E5%87%86%E5%BA%93%E7%9A%84%E4%B8%8D%E8%AE%A9%E7%94%A8%E7%9A%84%E8%AF%9D%E5%8F%AA%E8%83%BD%E8%87%AA%E5%B7%B1%E5%86%99%E5%A0%86%E5%87%BD%E6%95%B0)

##### [19.7.5 在不用第三方参数的情况下,交换两个参数的值 感觉比较:( , bt 而且还是基础题](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#865%E5%9C%A8%E4%B8%8D%E7%94%A8%E7%AC%AC%E4%B8%89%E6%96%B9%E5%8F%82%E6%95%B0%E7%9A%84%E6%83%85%E5%86%B5%E4%B8%8B%E4%BA%A4%E6%8D%A2%E4%B8%A4%E4%B8%AA%E5%8F%82%E6%95%B0%E7%9A%84%E5%80%BC-%E6%84%9F%E8%A7%89%E6%AF%94%E8%BE%83--bt-%E8%80%8C%E4%B8%94%E8%BF%98%E6%98%AF%E5%9F%BA%E7%A1%80%E9%A2%98)

##### [19.7.6 写一段程序,找出数组中第k大小的数,输出数所在的位置](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#866%E5%86%99%E4%B8%80%E6%AE%B5%E7%A8%8B%E5%BA%8F%E6%89%BE%E5%87%BA%E6%95%B0%E7%BB%84%E4%B8%AD%E7%AC%ACk%E5%A4%A7%E5%B0%8F%E7%9A%84%E6%95%B0%E8%BE%93%E5%87%BA%E6%95%B0%E6%89%80%E5%9C%A8%E7%9A%84%E4%BD%8D%E7%BD%AE)

##### [19.7.7 求1000!的未尾有几个0(用素数相乘的方法来做,如72=22233)](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#867%E6%B1%821000%E7%9A%84%E6%9C%AA%E5%B0%BE%E6%9C%89%E5%87%A0%E4%B8%AA0%E7%94%A8%E7%B4%A0%E6%95%B0%E7%9B%B8%E4%B9%98%E7%9A%84%E6%96%B9%E6%B3%95%E6%9D%A5%E5%81%9A%E5%A6%827222233)

##### [19.7.8 编程实现:把十进制数(long型)分别以二进制和十六进制形式输出,不能使用printf系列库函数](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#868%E7%BC%96%E7%A8%8B%E5%AE%9E%E7%8E%B0%E6%8A%8A%E5%8D%81%E8%BF%9B%E5%88%B6%E6%95%B0long%E5%9E%8B%E5%88%86%E5%88%AB%E4%BB%A5%E4%BA%8C%E8%BF%9B%E5%88%B6%E5%92%8C%E5%8D%81%E5%85%AD%E8%BF%9B%E5%88%B6%E5%BD%A2%E5%BC%8F%E8%BE%93%E5%87%BA%E4%B8%8D%E8%83%BD%E4%BD%BF%E7%94%A8printf%E7%B3%BB%E5%88%97%E5%BA%93%E5%87%BD%E6%95%B0)

##### [19.7.9 输入N, 打印 N*N 矩阵](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#869%E8%BE%93%E5%85%A5n-%E6%89%93%E5%8D%B0-nn-%E7%9F%A9%E9%98%B5)

##### [19.8.1 斐波拉契数列递归实现的方法如下](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#870%E6%96%90%E6%B3%A2%E6%8B%89%E5%A5%91%E6%95%B0%E5%88%97%E9%80%92%E5%BD%92%E5%AE%9E%E7%8E%B0%E7%9A%84%E6%96%B9%E6%B3%95%E5%A6%82%E4%B8%8B)

##### [19.8.2 将一个数字字符串转换为数字."1234" -->1234](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#871%E5%B0%86%E4%B8%80%E4%B8%AA%E6%95%B0%E5%AD%97%E5%AD%97%E7%AC%A6%E4%B8%B2%E8%BD%AC%E6%8D%A2%E4%B8%BA%E6%95%B0%E5%AD%971234---1234)

##### [19.8.3 编程实现:把十进制数(long型)分别以二进制和十六进制形式输出,不能使用printf系列库函数](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#872%E7%BC%96%E7%A8%8B%E5%AE%9E%E7%8E%B0%E6%8A%8A%E5%8D%81%E8%BF%9B%E5%88%B6%E6%95%B0long%E5%9E%8B%E5%88%86%E5%88%AB%E4%BB%A5%E4%BA%8C%E8%BF%9B%E5%88%B6%E5%92%8C%E5%8D%81%E5%85%AD%E8%BF%9B%E5%88%B6%E5%BD%A2%E5%BC%8F%E8%BE%93%E5%87%BA%E4%B8%8D%E8%83%BD%E4%BD%BF%E7%94%A8printf%E7%B3%BB%E5%88%97%E5%BA%93%E5%87%BD%E6%95%B0)

##### [19.8.4 实现任意长度的整数相加或者相乘功能](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#873%E5%AE%9E%E7%8E%B0%E4%BB%BB%E6%84%8F%E9%95%BF%E5%BA%A6%E7%9A%84%E6%95%B4%E6%95%B0%E7%9B%B8%E5%8A%A0%E6%88%96%E8%80%85%E7%9B%B8%E4%B9%98%E5%8A%9F%E8%83%BD)

##### [19.8.5 用递归算法判断数组a[N]是否为一个递增数组](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#874%E7%94%A8%E9%80%92%E5%BD%92%E7%AE%97%E6%B3%95%E5%88%A4%E6%96%AD%E6%95%B0%E7%BB%84an%E6%98%AF%E5%90%A6%E4%B8%BA%E4%B8%80%E4%B8%AA%E9%80%92%E5%A2%9E%E6%95%B0%E7%BB%84)

##### [19.8.6 给两个数组和他们的大小,还有一动态开辟的内存,求交集,把交集放到动态内存dongtai,并且返回交集个数](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#876%E7%BB%99%E4%B8%A4%E4%B8%AA%E6%95%B0%E7%BB%84%E5%92%8C%E4%BB%96%E4%BB%AC%E7%9A%84%E5%A4%A7%E5%B0%8F%E8%BF%98%E6%9C%89%E4%B8%80%E5%8A%A8%E6%80%81%E5%BC%80%E8%BE%9F%E7%9A%84%E5%86%85%E5%AD%98%E6%B1%82%E4%BA%A4%E9%9B%86%E6%8A%8A%E4%BA%A4%E9%9B%86%E6%94%BE%E5%88%B0%E5%8A%A8%E6%80%81%E5%86%85%E5%AD%98dongtai%E5%B9%B6%E4%B8%94%E8%BF%94%E5%9B%9E%E4%BA%A4%E9%9B%86%E4%B8%AA%E6%95%B0)

##### [19.8.7 用两个栈实现一个队列的功能?要求给出算法和思路!](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#879%E7%94%A8%E4%B8%A4%E4%B8%AA%E6%A0%88%E5%AE%9E%E7%8E%B0%E4%B8%80%E4%B8%AA%E9%98%9F%E5%88%97%E7%9A%84%E5%8A%9F%E8%83%BD%E8%A6%81%E6%B1%82%E7%BB%99%E5%87%BA%E7%AE%97%E6%B3%95%E5%92%8C%E6%80%9D%E8%B7%AF)

##### [19.8.8 求组合数: 求n个数(1....n)中k个数的组合.... 如:combination(5,3)](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#880%E6%B1%82%E7%BB%84%E5%90%88%E6%95%B0-%E6%B1%82n%E4%B8%AA%E6%95%B01n%E4%B8%ADk%E4%B8%AA%E6%95%B0%E7%9A%84%E7%BB%84%E5%90%88-%E5%A6%82combination53)

##### [19.8.9 下面是C语言中两种if语句判断方式。请问哪种写法更好?为什么?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#881%E4%B8%8B%E9%9D%A2%E6%98%AFc%E8%AF%AD%E8%A8%80%E4%B8%AD%E4%B8%A4%E7%A7%8Dif%E8%AF%AD%E5%8F%A5%E5%88%A4%E6%96%AD%E6%96%B9%E5%BC%8F%E8%AF%B7%E9%97%AE%E5%93%AA%E7%A7%8D%E5%86%99%E6%B3%95%E6%9B%B4%E5%A5%BD%E4%B8%BA%E4%BB%80%E4%B9%88)

##### [19.9.1 下面的代码有什么问题?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#882%E4%B8%8B%E9%9D%A2%E7%9A%84%E4%BB%A3%E7%A0%81%E6%9C%89%E4%BB%80%E4%B9%88%E9%97%AE%E9%A2%98)

##### [19.9.2 下面的代码有什么问题?并请给出正确的写法。](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#883%E4%B8%8B%E9%9D%A2%E7%9A%84%E4%BB%A3%E7%A0%81%E6%9C%89%E4%BB%80%E4%B9%88%E9%97%AE%E9%A2%98%E5%B9%B6%E8%AF%B7%E7%BB%99%E5%87%BA%E6%AD%A3%E7%A1%AE%E7%9A%84%E5%86%99%E6%B3%95)

##### [19.9.3 下面代码有什么错误?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#884%E4%B8%8B%E9%9D%A2%E4%BB%A3%E7%A0%81%E6%9C%89%E4%BB%80%E4%B9%88%E9%94%99%E8%AF%AF)

##### [19.9.4 下面代码有什么问题?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#885%E4%B8%8B%E9%9D%A2%E4%BB%A3%E7%A0%81%E6%9C%89%E4%BB%80%E4%B9%88%E9%97%AE%E9%A2%98)

##### [19.9.5 下面的代码有什么问题?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#886%E4%B8%8B%E9%9D%A2%E4%BB%A3%E7%A0%81%E6%9C%89%E4%BB%80%E4%B9%88%E9%97%AE%E9%A2%98)

##### [19.9.6 下面的代码有什么问题?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#887%E4%B8%8B%E9%9D%A2%E4%BB%A3%E7%A0%81%E6%9C%89%E4%BB%80%E4%B9%88%E9%97%AE%E9%A2%98)

##### [19.9.7 下面的代码有什么问题?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#888%E4%B8%8B%E9%9D%A2%E4%BB%A3%E7%A0%81%E6%9C%89%E4%BB%80%E4%B9%88%E9%97%AE%E9%A2%98)

##### [19.9.8 下面这个程序执行后会有什么错误或者效果](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#889%E4%B8%8B%E9%9D%A2%E8%BF%99%E4%B8%AA%E7%A8%8B%E5%BA%8F%E6%89%A7%E8%A1%8C%E5%90%8E%E4%BC%9A%E6%9C%89%E4%BB%80%E4%B9%88%E9%94%99%E8%AF%AF%E6%88%96%E8%80%85%E6%95%88%E6%9E%9C)

##### [19.9.9 请找出下面代码中的所以错误](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#890%E8%AF%B7%E6%89%BE%E5%87%BA%E4%B8%8B%E9%9D%A2%E4%BB%A3%E7%A0%81%E4%B8%AD%E7%9A%84%E6%89%80%E4%BB%A5%E9%94%99%E8%AF%AF)

##### [20.1.1 请问下面程序有什么错误?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#891%E8%AF%B7%E9%97%AE%E4%B8%8B%E9%9D%A2%E7%A8%8B%E5%BA%8F%E6%9C%89%E4%BB%80%E4%B9%88%E9%94%99%E8%AF%AF)

##### [20.1.2 32位,64位系统中,各种常用内置数据类型占用的字节数?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#89232%E4%BD%8D64%E4%BD%8D%E7%B3%BB%E7%BB%9F%E4%B8%AD%E5%90%84%E7%A7%8D%E5%B8%B8%E7%94%A8%E5%86%85%E7%BD%AE%E6%95%B0%E6%8D%AE%E7%B1%BB%E5%9E%8B%E5%8D%A0%E7%94%A8%E7%9A%84%E5%AD%97%E8%8A%82%E6%95%B0)

##### [20.1.3 悬空指针与野指针区别](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#893%E6%82%AC%E7%A9%BA%E6%8C%87%E9%92%88%E4%B8%8E%E9%87%8E%E6%8C%87%E9%92%88%E5%8C%BA%E5%88%AB)

##### [20.1.4 vector、map、multimap底层数据结构](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#894vectormapmultimap%E5%BA%95%E5%B1%82%E6%95%B0%E6%8D%AE%E7%BB%93%E6%9E%84)

##### [20.1.5 C++的内存分区](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#895c%E7%9A%84%E5%86%85%E5%AD%98%E5%88%86%E5%8C%BA)

##### [20.1.6 结构与联合有和区别?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#896%E7%BB%93%E6%9E%84%E4%B8%8E%E8%81%94%E5%90%88%E6%9C%89%E5%92%8C%E5%8C%BA%E5%88%AB)

##### [20.1.7 将“引用”作为函数参数有哪些特点?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#897%E5%B0%86%E5%BC%95%E7%94%A8%E4%BD%9C%E4%B8%BA%E5%87%BD%E6%95%B0%E5%8F%82%E6%95%B0%E6%9C%89%E5%93%AA%E4%BA%9B%E7%89%B9%E7%82%B9)

##### [20.1.8 多态,虚函数,纯虚函数](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#898%E5%A4%9A%E6%80%81%E8%99%9A%E5%87%BD%E6%95%B0%E7%BA%AF%E8%99%9A%E5%87%BD%E6%95%B0)

##### [20.1.9 delete与 delete []区别](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#899delete%E4%B8%8E-delete-%E5%8C%BA%E5%88%AB)

##### [20.2.1 new、delete、malloc、free关系](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#900newdeletemallocfree%E5%85%B3%E7%B3%BB)

##### [20.2.2 链表和数组存储线性表的比较](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#901%E9%93%BE%E8%A1%A8%E5%92%8C%E6%95%B0%E7%BB%84%E5%AD%98%E5%82%A8%E7%BA%BF%E6%80%A7%E8%A1%A8%E7%9A%84%E6%AF%94%E8%BE%83)

##### [20.2.3 C语言中链表的特点](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#902c%E8%AF%AD%E8%A8%80%E4%B8%AD%E9%93%BE%E8%A1%A8%E7%9A%84%E7%89%B9%E7%82%B9)

##### [20.2.4 C语言中链表定义及结构](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#903c%E8%AF%AD%E8%A8%80%E4%B8%AD%E9%93%BE%E8%A1%A8%E5%AE%9A%E4%B9%89%E5%8F%8A%E7%BB%93%E6%9E%84)

##### [20.2.5 C++中的临时对象](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#904c%E4%B8%AD%E7%9A%84%E4%B8%B4%E6%97%B6%E5%AF%B9%E8%B1%A1)

##### [20.2.6 C++中的析构函数](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#905c%E4%B8%AD%E7%9A%84%E6%9E%90%E6%9E%84%E5%87%BD%E6%95%B0)

##### [20.2.7 C++中对象的构造的顺序](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#906c%E4%B8%AD%E5%AF%B9%E8%B1%A1%E7%9A%84%E6%9E%84%E9%80%A0%E7%9A%84%E9%A1%BA%E5%BA%8F)

##### [20.2.8 C++中赋值和初始化的区别](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#907c%E4%B8%AD%E8%B5%8B%E5%80%BC%E5%92%8C%E5%88%9D%E5%A7%8B%E5%8C%96%E7%9A%84%E5%8C%BA%E5%88%AB)

##### [20.2.9 C++类成员的初始化](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#908c%E7%B1%BB%E6%88%90%E5%91%98%E7%9A%84%E5%88%9D%E5%A7%8B%E5%8C%96)

##### [20.3.1 C++什么时候需要进行深拷贝](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#909c%E4%BB%80%E4%B9%88%E6%97%B6%E5%80%99%E9%9C%80%E8%A6%81%E8%BF%9B%E8%A1%8C%E6%B7%B1%E6%8B%B7%E8%B4%9D)

##### [20.3.2 拷贝构造函数的意义](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#910%E6%8B%B7%E8%B4%9D%E6%9E%84%E9%80%A0%E5%87%BD%E6%95%B0%E7%9A%84%E6%84%8F%E4%B9%89)

##### [20.3.3 C++中对象的声明和定义](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#912c%E4%B8%AD%E5%AF%B9%E8%B1%A1%E7%9A%84%E5%A3%B0%E6%98%8E%E5%92%8C%E5%AE%9A%E4%B9%89)

##### [20.3.4 C++中带参数的构造函数](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#913c%E4%B8%AD%E5%B8%A6%E5%8F%82%E6%95%B0%E7%9A%84%E6%9E%84%E9%80%A0%E5%87%BD%E6%95%B0)

##### [20.3.5 C++中的构造函数](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#914c%E4%B8%AD%E7%9A%84%E6%9E%84%E9%80%A0%E5%87%BD%E6%95%B0)

##### [20.3.6 C++对象初始化](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#915c%E5%AF%B9%E8%B1%A1%E5%88%9D%E5%A7%8B%E5%8C%96)

##### [20.3.7 C++面向对象的意义](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#917c%E9%9D%A2%E5%90%91%E5%AF%B9%E8%B1%A1%E7%9A%84%E6%84%8F%E4%B9%89)

##### [20.3.8 C++中类之间的基本关系](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#918c%E4%B8%AD%E7%B1%BB%E4%B9%8B%E9%97%B4%E7%9A%84%E5%9F%BA%E6%9C%AC%E5%85%B3%E7%B3%BB)

##### [20.3.9 C++中类成员的作用域](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#919c%E4%B8%AD%E7%B1%BB%E6%88%90%E5%91%98%E7%9A%84%E4%BD%9C%E7%94%A8%E5%9F%9F)

##### [20.4.1 C++中类的关键字](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#920c%E4%B8%AD%E7%B1%BB%E7%9A%84%E5%85%B3%E9%94%AE%E5%AD%97)

##### [20.4.2 C++中类声明和实现的分离](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#921c%E4%B8%AD%E7%B1%BB%E5%A3%B0%E6%98%8E%E5%92%8C%E5%AE%9E%E7%8E%B0%E7%9A%84%E5%88%86%E7%A6%BB)

##### [20.4.3 C++中的命名空间](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#922c%E4%B8%AD%E7%9A%84%E5%91%BD%E5%90%8D%E7%A9%BA%E9%97%B4)

##### [20.4.4 C和C++相互调用](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#923c%E5%92%8Cc%E7%9B%B8%E4%BA%92%E8%B0%83%E7%94%A8)

##### [20.4.5 函数重载的定义、条件、注意事项](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#924%E5%87%BD%E6%95%B0%E9%87%8D%E8%BD%BD%E7%9A%84%E5%AE%9A%E4%B9%89%E6%9D%A1%E4%BB%B6%E6%B3%A8%E6%84%8F%E4%BA%8B%E9%A1%B9)

##### [20.4.6 C++中 inline 内联编译的限制](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#925c%E4%B8%AD-inline-%E5%86%85%E8%81%94%E7%BC%96%E8%AF%91%E7%9A%84%E9%99%90%E5%88%B6)

##### [20.4.7 内联函数的定义和特点](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#926%E5%86%85%E8%81%94%E5%87%BD%E6%95%B0%E7%9A%84%E5%AE%9A%E4%B9%89%E5%92%8C%E7%89%B9%E7%82%B9)

##### [20.4.8 C++引用的意义](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#927c%E5%BC%95%E7%94%A8%E7%9A%84%E6%84%8F%E4%B9%89)

##### [20.4.9 C++引用的本质](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#928c%E5%BC%95%E7%94%A8%E7%9A%84%E6%9C%AC%E8%B4%A8)

##### [20.5.1 C++中特殊的引用--const引用](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#929c%E4%B8%AD%E7%89%B9%E6%AE%8A%E7%9A%84%E5%BC%95%E7%94%A8--const%E5%BC%95%E7%94%A8)

##### [20.5.2 C 到 C++ 的升级](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#930c-%E5%88%B0-c-%E7%9A%84%E5%8D%87%E7%BA%A7%E8%87%B3%E5%B0%91%E5%88%97%E5%87%BA%E4%B8%89%E7%82%B9)

##### [20.5.3 C和C++语言中的三目运算符](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#931c%E5%92%8Cc%E8%AF%AD%E8%A8%80%E4%B8%AD%E7%9A%84%E4%B8%89%E7%9B%AE%E8%BF%90%E7%AE%97%E7%AC%A6)

##### [20.5.4 宏的局限和妙用](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#932%E5%AE%8F%E7%9A%84%E5%B1%80%E9%99%90%E5%92%8C%E5%A6%99%E7%94%A8)

##### [20.5.5 C 语言中的顺序点](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#933c-%E8%AF%AD%E8%A8%80%E4%B8%AD%E7%9A%84%E9%A1%BA%E5%BA%8F%E7%82%B9)

##### [20.5.6 C/C++语言中的函数参数](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#934cc%E8%AF%AD%E8%A8%80%E4%B8%AD%E7%9A%84%E5%87%BD%E6%95%B0%E5%8F%82%E6%95%B0)

##### [20.5.7 声明和定义](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#935%E5%A3%B0%E6%98%8E%E5%92%8C%E5%AE%9A%E4%B9%89)

##### [20.5.8 C/C++语言中内存操作的交通规则](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#936cc%E8%AF%AD%E8%A8%80%E4%B8%AD%E5%86%85%E5%AD%98%E6%93%8D%E4%BD%9C%E7%9A%84%E4%BA%A4%E9%80%9A%E8%A7%84%E5%88%99)

##### [20.5.9 C/C++语言中常见的内存错误](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#937cc%E8%AF%AD%E8%A8%80%E4%B8%AD%E5%B8%B8%E8%A7%81%E7%9A%84%E5%86%85%E5%AD%98%E9%94%99%E8%AF%AF)

##### [20.6.1 内存操作的基本原则](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#938%E5%86%85%E5%AD%98%E6%93%8D%E4%BD%9C%E7%9A%84%E5%9F%BA%E6%9C%AC%E5%8E%9F%E5%88%99)

##### [20.6.2 C/C++语言中野指针的含义](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#939cc%E8%AF%AD%E8%A8%80%E4%B8%AD%E9%87%8E%E6%8C%87%E9%92%88%E7%9A%84%E5%90%AB%E4%B9%89)

##### [20.6.3 C/C++语言中文件布局在内存中的映射](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#940cc%E8%AF%AD%E8%A8%80%E4%B8%AD%E6%96%87%E4%BB%B6%E5%B8%83%E5%B1%80%E5%9C%A8%E5%86%85%E5%AD%98%E4%B8%AD%E7%9A%84%E6%98%A0%E5%B0%84)

##### [20.6.4 C/C++语言中程序与进程](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#941cc%E8%AF%AD%E8%A8%80%E4%B8%AD%E7%A8%8B%E5%BA%8F%E4%B8%8E%E8%BF%9B%E7%A8%8B)

##### [20.6.5 C/C++程序中的静态存储区](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#942cc%E7%A8%8B%E5%BA%8F%E4%B8%AD%E7%9A%84%E9%9D%99%E6%80%81%E5%AD%98%E5%82%A8%E5%8C%BA)

##### [20.6.6 C/C++程序中的堆](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#943cc%E7%A8%8B%E5%BA%8F%E4%B8%AD%E7%9A%84%E5%A0%86)

##### [20.6.7 C语言中calloc 和 realloc 函数](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#945c%E8%AF%AD%E8%A8%80%E4%B8%ADcalloc-%E5%92%8C-realloc-%E5%87%BD%E6%95%B0)

##### [20.6.8 malloc和free函数及使用过程需要注意的地方](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#946malloc%E5%92%8Cfree%E5%87%BD%E6%95%B0%E5%8F%8A%E4%BD%BF%E7%94%A8%E8%BF%87%E7%A8%8B%E9%9C%80%E8%A6%81%E6%B3%A8%E6%84%8F%E7%9A%84%E5%9C%B0%E6%96%B9)

##### [20.6.9 C语言中动态内存分配](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#947c%E8%AF%AD%E8%A8%80%E4%B8%AD%E5%8A%A8%E6%80%81%E5%86%85%E5%AD%98%E5%88%86%E9%85%8D)

##### [20.7.1 C语言中的指针阅读技巧](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#948c%E8%AF%AD%E8%A8%80%E4%B8%AD%E7%9A%84%E6%8C%87%E9%92%88%E9%98%85%E8%AF%BB%E6%8A%80%E5%B7%A7)

##### [20.7.2 C语言中的函数指针](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#949c%E8%AF%AD%E8%A8%80%E4%B8%AD%E7%9A%84%E5%87%BD%E6%95%B0%E6%8C%87%E9%92%88)

##### [20.7.3 C语言中指向指针的指针](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#950c%E8%AF%AD%E8%A8%80%E4%B8%AD%E6%8C%87%E5%90%91%E6%8C%87%E9%92%88%E7%9A%84%E6%8C%87%E9%92%88)

##### [20.7.4 C语言中的数组指针和指针数组](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#951c%E8%AF%AD%E8%A8%80%E4%B8%AD%E7%9A%84%E6%95%B0%E7%BB%84%E6%8C%87%E9%92%88%E5%92%8C%E6%8C%87%E9%92%88%E6%95%B0%E7%BB%84)

##### [20.7.5 C语言中字符串相等的比较](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#952c%E8%AF%AD%E8%A8%80%E4%B8%AD%E5%AD%97%E7%AC%A6%E4%B8%B2%E7%9B%B8%E7%AD%89%E7%9A%84%E6%AF%94%E8%BE%83)

##### [20.7.6 C语言中的字符串和字符数组](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#953c%E8%AF%AD%E8%A8%80%E4%B8%AD%E7%9A%84%E5%AD%97%E7%AC%A6%E4%B8%B2%E5%92%8C%E5%AD%97%E7%AC%A6%E6%95%B0%E7%BB%84)

##### [20.7.7 数组参数](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#954%E6%95%B0%E7%BB%84%E5%8F%82%E6%95%B0)

##### [20.7.8 数组的访问方式](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#955%E6%95%B0%E7%BB%84%E7%9A%84%E8%AE%BF%E9%97%AE%E6%96%B9%E5%BC%8F)

##### [20.7.9 数组地址与数组名](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#956%E6%95%B0%E7%BB%84%E5%9C%B0%E5%9D%80%E4%B8%8E%E6%95%B0%E7%BB%84%E5%90%8D)

##### [20.8.1 C++中类封装的基本概念](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#957c%E4%B8%AD%E7%B1%BB%E5%B0%81%E8%A3%85%E7%9A%84%E5%9F%BA%E6%9C%AC%E6%A6%82%E5%BF%B5)

##### [20.8.2 C++中的引用基本点](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#958c%E4%B8%AD%E7%9A%84%E5%BC%95%E7%94%A8%E5%9F%BA%E6%9C%AC%E7%82%B9)

##### [20.8.3 函数设计原则](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#959%E5%87%BD%E6%95%B0%E8%AE%BE%E8%AE%A1%E5%8E%9F%E5%88%99)

##### [20.8.4 C语言中的回调函数](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#960c%E8%AF%AD%E8%A8%80%E4%B8%AD%E7%9A%84%E5%9B%9E%E8%B0%83%E5%87%BD%E6%95%B0)

##### [20.8.5 C语言中二维数组参数](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#961c%E8%AF%AD%E8%A8%80%E4%B8%AD%E4%BA%8C%E7%BB%B4%E6%95%B0%E7%BB%84%E5%8F%82%E6%95%B0)

##### [20.8.6 数组的本质](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#962%E6%95%B0%E7%BB%84%E7%9A%84%E6%9C%AC%E8%B4%A8)

##### [20.8.7 数组的含义](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#963%E6%95%B0%E7%BB%84%E7%9A%84%E5%90%AB%E4%B9%89)

##### [20.8.8 C语言中#pragma 的使用](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#964c%E8%AF%AD%E8%A8%80%E4%B8%ADpragma-%E7%9A%84%E4%BD%BF%E7%94%A8)

##### [20.8.9 C语言中#line的用法](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#965c%E8%AF%AD%E8%A8%80%E4%B8%ADline%E7%9A%84%E7%94%A8%E6%B3%95)

##### [20.9.1 C语言中#error的用法](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#966c%E8%AF%AD%E8%A8%80%E4%B8%ADerror%E7%9A%84%E7%94%A8%E6%B3%95)

##### [20.9.2 c语言中数组参数退化为指针的意义](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#967c%E8%AF%AD%E8%A8%80%E4%B8%AD%E6%95%B0%E7%BB%84%E5%8F%82%E6%95%B0%E9%80%80%E5%8C%96%E4%B8%BA%E6%8C%87%E9%92%88%E7%9A%84%E6%84%8F%E4%B9%89)

##### [20.9.3 程序中的顺序点](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#968%E7%A8%8B%E5%BA%8F%E4%B8%AD%E7%9A%84%E9%A1%BA%E5%BA%8F%E7%82%B9)

##### [20.9.4 面向过程的程序设计](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#969%E9%9D%A2%E5%90%91%E8%BF%87%E7%A8%8B%E7%9A%84%E7%A8%8B%E5%BA%8F%E8%AE%BE%E8%AE%A1)

##### [20.9.5 C语言中的函数类型](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#970c%E8%AF%AD%E8%A8%80%E4%B8%AD%E7%9A%84%E5%87%BD%E6%95%B0%E7%B1%BB%E5%9E%8B)

##### [20.9.6 C语言二维数组与二级指针](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#971c%E8%AF%AD%E8%A8%80%E4%BA%8C%E7%BB%B4%E6%95%B0%E7%BB%84%E4%B8%8E%E4%BA%8C%E7%BA%A7%E6%8C%87%E9%92%88)

##### [20.9.7 C语言中字符串的长度](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#972c%E8%AF%AD%E8%A8%80%E4%B8%AD%E5%AD%97%E7%AC%A6%E4%B8%B2%E7%9A%84%E9%95%BF%E5%BA%A6)

##### [20.9.8 指针的运算](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#973%E6%8C%87%E9%92%88%E7%9A%84%E8%BF%90%E7%AE%97)

##### [20.9.9 数组名的知识点](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#974%E6%95%B0%E7%BB%84%E5%90%8D%E7%9A%84%E7%9F%A5%E8%AF%86%E7%82%B9)

##### [21.1.1 C语言中的条件编译](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#975c%E8%AF%AD%E8%A8%80%E4%B8%AD%E7%9A%84%E6%9D%A1%E4%BB%B6%E7%BC%96%E8%AF%91)

##### [21.1.2 C语言中函数和宏定义的对比](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#976c%E8%AF%AD%E8%A8%80%E4%B8%AD%E5%87%BD%E6%95%B0%E5%92%8C%E5%AE%8F%E5%AE%9A%E4%B9%89%E7%9A%84%E5%AF%B9%E6%AF%94)

##### [21.1.3 c语言中动态库和静态库的使用](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#977c%E8%AF%AD%E8%A8%80%E4%B8%AD%E5%8A%A8%E6%80%81%E5%BA%93%E5%92%8C%E9%9D%99%E6%80%81%E5%BA%93%E7%9A%84%E4%BD%BF%E7%94%A8)

##### [21.1.4 c语言中的逗号表达式](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#978c%E8%AF%AD%E8%A8%80%E4%B8%AD%E7%9A%84%E9%80%97%E5%8F%B7%E8%A1%A8%E8%BE%BE%E5%BC%8F)

##### [21.1.5 C语言中的单引号和双引号](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#979c%E8%AF%AD%E8%A8%80%E4%B8%AD%E7%9A%84%E5%8D%95%E5%BC%95%E5%8F%B7%E5%92%8C%E5%8F%8C%E5%BC%95%E5%8F%B7)

##### [21.1.6 C语言中接续符和转义符](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#980c%E8%AF%AD%E8%A8%80%E4%B8%AD%E6%8E%A5%E7%BB%AD%E7%AC%A6%E5%92%8C%E8%BD%AC%E4%B9%89%E7%AC%A6)

##### [21.1.7 C语言中union关键字](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#981c%E8%AF%AD%E8%A8%80%E4%B8%ADunion%E5%85%B3%E9%94%AE%E5%AD%97)

##### [21.1.8 C语言中变量的属性关键字](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#982c%E8%AF%AD%E8%A8%80%E4%B8%AD%E5%8F%98%E9%87%8F%E7%9A%84%E5%B1%9E%E6%80%A7%E5%85%B3%E9%94%AE%E5%AD%97)

##### [21.1.9 c语言中enum关键字的作用](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#983c%E8%AF%AD%E8%A8%80%E4%B8%ADenum%E5%85%B3%E9%94%AE%E5%AD%97%E7%9A%84%E4%BD%9C%E7%94%A8)

##### [21.2.1 C语言中sizeof关键字的作用](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#984c%E8%AF%AD%E8%A8%80%E4%B8%ADsizeof%E5%85%B3%E9%94%AE%E5%AD%97%E7%9A%84%E4%BD%9C%E7%94%A8)

##### [21.2.2 c语言中extern关键字的作用](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#985c%E8%AF%AD%E8%A8%80%E4%B8%ADextern%E5%85%B3%E9%94%AE%E5%AD%97%E7%9A%84%E4%BD%9C%E7%94%A8)

##### [21.2.3 C语言中volatile关键字的作用](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#986c%E8%AF%AD%E8%A8%80%E4%B8%ADvolatile%E5%85%B3%E9%94%AE%E5%AD%97%E7%9A%84%E4%BD%9C%E7%94%A8)

##### [21.2.4 C语言中const关键字的作用](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#987c%E8%AF%AD%E8%A8%80%E4%B8%ADconst%E5%85%B3%E9%94%AE%E5%AD%97%E7%9A%84%E4%BD%9C%E7%94%A8)

##### [21.2.5 ‘#’与‘##’的区别](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#988%E4%B8%8E%E7%9A%84%E5%8C%BA%E5%88%AB)

##### [21.2.6 如何引用一个已经定义过的全局变量?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#989%E5%A6%82%E4%BD%95%E5%BC%95%E7%94%A8%E4%B8%80%E4%B8%AA%E5%B7%B2%E7%BB%8F%E5%AE%9A%E4%B9%89%E8%BF%87%E7%9A%84%E5%85%A8%E5%B1%80%E5%8F%98%E9%87%8F)

##### [21.2.7 大小端问题](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#990%E5%A4%A7%E5%B0%8F%E7%AB%AF%E9%97%AE%E9%A2%98)

##### [21.2.8 typedef关键字](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#991typedef%E5%85%B3%E9%94%AE%E5%AD%97)

##### [21.2.9 什么是封装?C++中是如何实现的?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#992%E4%BB%80%E4%B9%88%E6%98%AF%E5%B0%81%E8%A3%85c%E4%B8%AD%E6%98%AF%E5%A6%82%E4%BD%95%E5%AE%9E%E7%8E%B0%E7%9A%84)

##### [21.3.1 C与C++各自是如何定义常量的?有什么不同?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#993c%E4%B8%8Ec%E5%90%84%E8%87%AA%E6%98%AF%E5%A6%82%E4%BD%95%E5%AE%9A%E4%B9%89%E5%B8%B8%E9%87%8F%E7%9A%84%E6%9C%89%E4%BB%80%E4%B9%88%E4%B8%8D%E5%90%8C)

##### [21.3.2 内存的分配方式的分配方式有几种?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#994%E5%86%85%E5%AD%98%E7%9A%84%E5%88%86%E9%85%8D%E6%96%B9%E5%BC%8F%E7%9A%84%E5%88%86%E9%85%8D%E6%96%B9%E5%BC%8F%E6%9C%89%E5%87%A0%E7%A7%8D)

##### [21.3.3 头文件中的 ifndef/define/endif 干什么用?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#995%E5%A4%B4%E6%96%87%E4%BB%B6%E4%B8%AD%E7%9A%84-ifndefdefineendif-%E5%B9%B2%E4%BB%80%E4%B9%88%E7%94%A8)

##### [21.3.4 什么是预编译?何时需要预编译?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#996%E4%BB%80%E4%B9%88%E6%98%AF%E9%A2%84%E7%BC%96%E8%AF%91%E4%BD%95%E6%97%B6%E9%9C%80%E8%A6%81%E9%A2%84%E7%BC%96%E8%AF%91)

##### [21.3.5 在C++程序中调用被C编译器编译后的函数,为什么要加extern“C”声明?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#997%E5%9C%A8c%E7%A8%8B%E5%BA%8F%E4%B8%AD%E8%B0%83%E7%94%A8%E8%A2%ABc%E7%BC%96%E8%AF%91%E5%99%A8%E7%BC%96%E8%AF%91%E5%90%8E%E7%9A%84%E5%87%BD%E6%95%B0%E4%B8%BA%E4%BB%80%E4%B9%88%E8%A6%81%E5%8A%A0externc%E5%A3%B0%E6%98%8E)

##### [21.3.6 memset ,memcpy 的区别](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#998memset-memcpy-%E7%9A%84%E5%8C%BA%E5%88%AB)

##### [21.3.7 一下三种指针的区别?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#999%E4%B8%80%E4%B8%8B%E4%B8%89%E7%A7%8D%E6%8C%87%E9%92%88%E7%9A%84%E5%8C%BA%E5%88%AB)

##### [21.3.8 “常量指针”和“指针常量”有什么区别?](https://github.com/0voice/interview_internal_reference/blob/master/2023adding.md#1000%E5%B8%B8%E9%87%8F%E6%8C%87%E9%92%88%E5%92%8C%E6%8C%87%E9%92%88%E5%B8%B8%E9%87%8F%E6%9C%89%E4%BB%80%E4%B9%88%E5%8C%BA%E5%88%AB)




零领工作

---

##### 实时提供,每周发布北京,上海,广州,深圳,杭州,南京,合肥,武汉,长沙,重庆,成都,西安,厦门的c/c++,golang方向的招聘岗位信息。 校招,社招,实习岗位都有的。 面经,八股,简历都有的

零领工作




## 鸣谢

##### 感谢各位贡献patch的朋友, 还很多在issue里面出谋划策的朋友,为此衷心感谢。使得该repo能够在github趋势榜,持续一周时间问鼎排行榜。

















































































## 加入 gitter 讨论组
https://gitter.im/im0voice/interview_internal_reference