C语言问题整理
1.C语言之父是谁?
2.C语言和UNIX有什么区别
3.C语言特点哪些?
4.丹尼斯为什么写C语言?
5.为什么嵌入式开发中选择C语言作为开发语言?
6.什么是可移植性?
7.什么可以成为移植性好?
8.能够直接访问硬件的还有什么语言?与C语言有什么区别?
9.什么时候用C语言?什么时候用汇编?
10.C语言的标准有哪些?
11.C语言的标准之间的差别在哪里?
12.gcc遵循的什么标准?
13.什么是数据类型?
14.数据类型有哪些?
15.如何定义变量
16.隐式类型转化和强制类型转化分别是什么?
17.基本数据类型分别是占据多少字节?
18.char型数据类型的取值范围
19.sizeof与strlen的区别
20.解释原码、反码、补码
21.什么是变量?说明一下变量的特点
22.解释int num = 5
23.声明和定义的区别?
24.全局变量和局部变量的区别
25.请说明Linux进程虚拟地址空间分配情况
26.请说明scanf使用注意事项
27.请编程实现将十进制转化为二进制
28.请编程实现将十进制转化十六进制
29.请分别说明一维数组名、二维数组名、三维数组名的含义
30.什么是野指针?
31.如何避免野指针?
32.什么是内存泄漏?
33.导致内存泄漏的原因有哪些?
34.动态分配内存:malloc、realloc、calloc使用、区别,如何实现(实现原理)?注意事项?
35.请说明字符串的意义
36.请编程实现字符串处理函数:strlen、strcmp、strcpy、strcat、strncmp、strncpy、strchr、strstr、strtok、memset、memcpy、bzero,并说明其功能
37.请说明strcpy和memspy的区别
38.请说明指针与数组的区别?
39.请说明函数的特点?
40.什么是回调函数?
41.函数的三要素分别是?
42.什么是传入参数?什么传出参数?
43.什么时候传变量的地址
44.如何返回多个值?
45.请说明return 与exit的区别
46.请说明return 0的作用
47.请说明共用体的特点
48.请利用共用体编程实现判断机器的大小端
49.请说明枚举的作用
50.请说明枚举和宏定义的区别
51.什么是幻数?如何避免幻数?
52.宏定义和自定义函数的区别?
53.如何解决头文件重复包含带来的问题
54.请说明#include<>和#include“”的区别
55.请说明静态库和动态库的区别以及各自的特点
56.请说明register关键字的作用?使用注意事项?什么时候使用?
57.请说明static关键字的作用?使用注意事项?什么时候使用?
58.请说明extern关键字的作用
59.请说明const关键字的作用?使用注意事项?以及为什么叫做只读变量
60.请说明typedef的作用?以及如何使用?
61.请说明typedef与define的区别
62.请说明volatile作用?使用注意事项?
63.你的数据保存在哪里?
64.内存分配的方式有哪些?
65.常见的内存错误有哪些?并如何解决这些错误?
66.如何调试内存错误?
67.如何提高代码的可读性?
68.如何提高代码的复用性?
69.如何提高代码的扩展性?
70.如何用面向结构实现面向对象思想?