C语言与C++常见面试题

Posted 程序员资源社区

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C语言与C++常见面试题相关的知识,希望对你有一定的参考价值。


本篇根据各个公司的面试问的常见问题进行总结。

  • 1 变量的声明和定义有什么区别
  • 2 简述 #ifdef、#else、#endif#ifndef的作用
  • 3 写出 int 、bool、 float、指针变量与 “零值”比较的 if语句
  • 4 结构体可以直接赋值吗
  • 5 sizeofstrlen的区别
  • 6 C 语言的关键字 static和 C++ 的关键字 static有什么区别
  • 7 C 语言的 malloc和 C++ 中的 new有什么区别
  • 8 写一个 “标准”宏MIN
  • 9 ++ii++的区别
  • 10 volatile有什么作用
  • 11 一个参数可以既是 const又是 volatile
  • 12 a&a有什么区别
  • 13 用 C 编写一个死循环程序
  • 14 结构体内存对齐问题
  • 15 全局变量和局部变量有什么区别?实怎么实现的?操作系统和编译器是怎么知道的?
  • 16 简述 C、C++ 程序编译的内存分配情况
  • 17 简述 strcpy、sprintfmemcpy的区别
  • 18 请解析 (*(void (*)( ) )0)( )的含义
  • 19 C语言的指针和引用和c++的有什么区别?
  • 20 typedefdefine有什么区别
  • 21 指针常量与常量指针区别
  • 22 简述队列和栈的异同
  • 23 设置地址为 0x67a9的整型变量的值为 0xaa66
  • 24 编码实现字符串转化为数字
  • 25 C 语言的结构体和 C++ 的有什么区别
  • 26 简述指针常量与常量指针的区别
  • 27 如何避免“野指针”
  • 28 句柄和指针的区别和联系是什么?
  • 29 new/deletemalloc/free的区别是什么
  • 30 说一说 extern“C”
  • 31 请你来说一下 C++ 中 structclass的区别
  • 32 C++ 类内可以定义引用数据成员吗?
  • 33 C++ 中类成员的访问权限
  • 34 什么是右值引用,跟左值又有什么区别?
  • 35 面向对象的三大特征
  • 36 说一说 c++ 中四种 cast转换
  • 37 C++ 的空类有哪些成员函数
  • 38 对 c++ 中的 smart pointer四个智能指针: shared_ptr,unique_ptr,weak_ptr,auto_ptr的理解
  • 39 说说强制类型转换运算符
  • 40 谈谈你对拷贝构造函数和赋值运算符的认识
  • 41 在 C++ 中,使用 malloc申请的内存能否通过 delete释放?使用 new申请的内存能否用 free
  • 42 用 C++ 设计一个不能被继承的类
  • 43 C++ 自己实现一个 String
  • 44 访问基类的私有虚函数
  • 45 对虚函数和多态的理解
  • 46 简述类成员函数的重写、重载和隐藏的区别
  • 47 链表和数组有什么区别
  • 48 用两个栈实现一个队列的功能
  • 49 vector的底层原理
  • 50 vector中的 reserveresize的区别
  • 51 vector 中的size capacity的区别
  • 52 vector erase 方法与algorithn 中的remove`方法区别
  • 53 vector迭代器失效的情况
  • 54 正确释放 vector的内存 (clear(), swap(), shrink_to_fit())
  • 55 list的底层原理
  • 56 什么情况下用 vector,什么情况下用 list,什么情况下用 deque
  • 57 priority_queue的底层原理
  • 58 map 、set、multiset、multimap的底层原理
  • 59 为何 mapset的插入删除效率比其他序列容器高
  • 60 为何 mapset每次 Insert之后,以前保存的 iterator不会失效?
  • 61 当数据元素增多时(从 10000 到 20000), mapset的查找速度会怎样变化?
  • 62 map 、set、multiset、multimap的特点
  • 63 为何 mapset的插入删除效率比其他序列容器高,而且每次 insert 之后,以前保存的 iter
  • 64 为何 mapset不能像 vector一样有个 reserve函数来预分配数据?
  • 65 set的底层实现实现为什么不用哈希表而使用红黑树?
  • 66 hash_mapmap的区别?什么时候用 hash_map,什么时候用 map
  • 67 迭代器失效的问题
  • 68 STL线程不安全的情况

点【在看】是最大的支持 

以上是关于C语言与C++常见面试题的主要内容,如果未能解决你的问题,请参考以下文章

c++常见面试题

C++常见面试题30道

周六失眠... 连夜整理了68道C语言/C++常见面试题(含答案)

C/C++常见面试题

C/C++常见面试题

python常见面试题