文章目录
- 写在最前面
-
- 101.sizeof和strlen的区别
- 102.strcpy的缺陷
- 103.remove函数对STL迭代器的影响?
- 104.STL的六大组件是什么?
- 105.SGI STL的内存分配方式是什么?
- 106.STL中提供的allocator有什么用?跟系统自动分配相比有什么好处?
- 107.std::move是干什么的?原理是什么?
- 108.怎么用一个指向子类的基类指针调用基类的虚函数?
- 109.缓冲区溢出漏洞?
- 110.C++读取文件有哪几种方式?
- 111.5种报异常的情况?
- 112.栈溢出是什么原因导致的?
- 113.数组存在哪个区域?
- 114.数组访问要注意什么?
- 115.指针存放在什么地方?
- 116.什么是指针溢出?
- 117.如何用指针申请二维数组?
- 118.const修饰的变量存放在哪里?
- 119.如何修改text段?
- 120.long多少字节,和int有什么区别?
- 121.C++怎么实现随机数?
- 122.代码重用,那虚函数和模板有什么区别?分别适合什么?
- 123.防止内存泄露有什么方法?
- 124.C++类的static变量是什么时候初始化的,函数的static变量是什么时候初始化的?
- 125.枚举类型的大小?
- 126.类模板的优点和缺点?
- 127.如何在一个16位系统中进行64位运算?
- 128.开放封闭原则的意义是什么?
- 129.C++最重要的是什么?
- 130.引用是什么?返回值是引用时会怎样?若返回值是引用类型,可以return局部变量吗?
- 131.c++引用底层实现机制?
- 132.什么时候不能使用引用?
- 133.构造函数里能不能调用虚函数?
- 134.一个空的类会自动包含哪些函数?
- 135.lambda里=和&的区别是什么?
- 136.什么情况下需要在构造函数中做特殊处理?
- 137.假设一个class A; A *p = new A; free(A);若不用delete,而用new,可能发生什么情况?
- 138.类的普通成员函数和static成员函数有什么区别?普通成员函数是一个对象有一份的吗?
- 139.父类的哪些可以被子类继承?如何访问私有成员?
- 140.能不能修改const?
- 141.出现段错误的原因有哪些?
- 142.多重继承时,虚函数表如何变化?
- 143.拷贝构造函数和=号赋值的区别 ?
- 144.数组里的元素不是常规类型,如何处理?
写在最前面
专栏文章的所有问题与答案均来源于各个技术网站、技术博客等。由于当年自己有找工作需要,而面试问题与答案十分零散,不成体系,难以速成,所以收集整理了大量的笔试面试问题,主要包含的板块有:C/C++基础、操作系统、计算机网络、数据库、数据结构与算法、大数据等。
目前因工作原因,自己已经不再需要这些资料,准备清理电脑空间,所以会逐步分享出来。
本篇文章主要讲述的内容是:研发面试中的C/C++基础知识(第101——144题),文章以“一问一答”形式呈现。欢迎大家批评指正。
101.sizeof和strlen的区别
(1)sizeof是一个操作符,strlen是库函数
(2)sizeof的参数可以是数据类型,也可以是变量,而strlen只能以结尾为’\0’的字符串作参数。
(3)编译器在编译时就计算出了sizeof的结果,而strlen必须在运行时才能计算出来
(4)sizeof计算数据类型占内存的大小&#x