学习Linux C过程中要解决的问题
来源:互联网 发布:上古卷轴5cpu优化补丁 编辑:程序博客网 时间:2024/05/07 19:53
一、概述
1、嵌入式为什么选择C语言做开发?
2、C语言的特点有哪些?(C移植性、访问硬件、运行效率)?
3、C语言开发存在哪些劣势(代码复用性、代码维护性、代码扩展性)?
4、面向结构和面向对象的变成特点和区别?
5、C语言VS汇编?(两者都访问硬件)
6、C语言之父?
7、C语言的标准有哪些?(K&RC,c89、c11)
二、数据类型
1、C语言的数据类型有哪些?(基本数据类型、复合数据类型)
2、所有数据类型的字节长度是多少?(所占内存空间大小)
3、sizeof如何使用?sizeof和strlen的区别?
4、所有数据类型的取值范围是多少?如何计算数据类型取值范围?(原码、反码和补码)
5、正数和负数的原码、反码、补码之间的关系?
6、各个数据类型的指针长度是多少?指针的长度为什么是4个字节或者8个字节?
7、变量的三大特点是什么?
8、变量的存储区域是如何划分的?(进程虚拟地址的空间分布图)
9、声明与定义的区别?什么是引用性声明?什么是定义性声明?
10、unsigned和signed的区别?
11、输入函数的使用?(scanf,gets,getchar)(如何从键盘获取数据类型?)
12、输出函数的使用?(printf、puts、putchar)
三、运算符表达式
1、i++和++i的区别?
2、逻辑运算符使用时应该注意哪些问题?(&&、||、!)
3、如何区分赋值=和==?
4、位运算(什么是掩码?左移和右移的区别)
5、逗号运算符的使用?
四、基本控制语句
1、分支语句:if
2、多路分支语句:switch 、case
3、循环语句:for、while、do while
4、跳转语句:goto
5、中断语句:continue、break
五、数组与指针
1、如何定义并初始化一位数组、二维数组、三维数组?
2、一维数组名、二维数组名、三维数组名的作用是什么?
3、什么是数组的地址?数组指针变量的作用是什么?
4、什么是指针数组?如何初始化指针数组?
5、什么是指针?(什么是对应的内存空间和指向的内存空间?)
6、一维指针、二维指针、三维指针的作用是什么?
7、null代表什么意识?
8、void*为什么称之为万能指针?
9、什么是野指针?如何避免野指针?野指针会造成什么问题?
10、malloc、calloc、ralloc这些函数的使用?
11、指针与数组的区别是什么?
12、C语言为什么引入指针的概念?
六、函数
1、什么是函数的定义?函数的声明?函数的调用?
2、如何定义函数、声明函数、调用函数?
3、什么时候传地址?什么时候传真?
4、return和exit的区别?
七、复合数据类型(结构体、共用体、枚举)
1、如何定义并初始化结构变量、共用变量和枚举?
2、使用结构体、共用体的注意事项有哪些?
3、结构体、共用体的作用是什么?
八、关键字
1、register关键字的作用是什么?如何使用?使用注意事项有哪些?
2、static关键字的作用是什么?如何使用?
3、const关键字的作用?如何使用?注意事项有哪些?
4、extern关键字的作用?什么时候使用?
5、typedef关键字的作用?什么时候使用?
6、volatile关键字的作用?什么时候使用?
九、预处理
1、宏定义的注意事项有哪些?
2、自定义函数和宏函数的区别?
3、条件编译的作用及如何使用?
4、如何用条件编译防止头文件重复包含?
十、编码规范(华为的编码规范)
1、为什么要学习编码规范?
2、优秀的编码习惯有哪些?
十一、数据结构
1、链表
2、栈
3、队列
- 学习Linux C过程中要解决的问题
- maven学习过程中问题的解决
- C#学习过程中解决的问题
- opengl 学习过程中遇到的问题与解决
- 学习ffmpeg.c过程中遇上的系列问题
- 开发过程中待解决的问题
- androidstdio安装过程中解决的问题
- linux中卸载mount过程中遇到的问题分析和解决
- 自己在CODING过程中遇到的问题以及解决(C/VC)
- Linux下oracle10g的安装过程中遇到的部分环境验证问题的解决【转载】
- 《orange's:一个操作系统的实现》学习过程中问题的解决(持续更新)
- JavaWeb学习之注册登录功能实现过程中出现的问题及解决
- selenium学习过程中所遇各种问题及解决
- 解决putty终端中显示linux系统中C编程使用curses中文乱码的问题
- 解决绘图中闪烁的问题(C#)
- C中待解决的问题
- Linux使用过程中遇到的问题
- linux使用过程中遇到的问题
- 蓝桥杯BASIC-9(特殊回文数)
- [BZOJ2186][Sdoi2008]沙拉公主的困惑
- JavaScript 键盘事件
- 类(class),抽象类(abstract), 接口(interface)的关系和区别
- 第十六周项目1-(3)直接选择排序
- 学习Linux C过程中要解决的问题
- 数据结构课程总结
- 蓝桥杯BASIC-10(十进制转十六进制)
- Core Graphics坐标系问题
- Android 开发:由模块化到组件化(一)
- HDU3306 -- Another kind of Fibonacci 构造矩阵然后矩阵快速幂
- hbuild 快捷键
- Hibernate之关系映射的两种方式(xml映射、annotation注解映射)
- 个人觉得有收藏价值的网址