1. 进程和线程的基本概念是什么?
2. 进程和线程之间有什么主要区别?
3. 进程和线程的优缺点分别是什么?
4. 什么时候选择使用进程,什么时候选择使用线程?
5. 多进程和多线程的同步与通信方法有哪些?
6. 进程的地址空间模型有哪些?
7. 进程和线程的状态转换图是什么样的?什么情况下会阻塞和就绪?
8. 父进程和子进程之间的关系和区别是什么?
9. 什么是进程上下文和中断上下文?
10. 一个进程可以创建多少线程?这个数量与什么有关?
11. 并发、同步、异步、互斥、阻塞和非阻塞的定义是什么?
12. 线程同步和互斥的具体实现方法有哪些?
13. 线程同步与阻塞之间的关系是什么?同步一定阻塞吗?阻塞一定同步吗?
14. 孤儿进程、僵尸进程和守护进程的概念是什么?
15. 如何创建守护进程?
16. 如何正确处理僵尸进程?
17. C和C++之间的主要区别是什么?
18. new和malloc的区别是什么?
19. malloc的底层实现是怎样的?
20. 在1G内存的计算机中能否malloc(1.2G)?为什么?
21. 指针与引用的相同和区别是什么?如何相互转换?
22. C语言检索内存情况的方式有哪些?内存分配的方式是什么?
23. extern "C"的作用是什么?
24. 头文件声明时加extern,而在定义时不要加的原因是什么?
25. 函数参数压栈顺序是什么?关于__stdcall和__cdecl调用方式的理解是什么?
26. 重写memcpy()函数需要注意哪些问题?
27. 数组到底存放在哪里?
28. struct和class的区别是什么?
29. char和int之间的转换是怎样的?
30. static的用法和定义是什么?
31. const常量和#define的区别是什么?
32. volatile的作用和用法是什么?
33. 为什么没有引用常量?
34. C/C++中变量的作用域是什么?
35. C++中类型转换机制有哪些?dynamic_cast转换失败时会出现什么情况?