嵌入式linux c语言知识点

2019-07-12 19:41发布

以下是我在学习嵌入式linux c 语言基础知识及语法中个人觉得比较重要和容易出错的知识点,可能写出来不是一个很系统的学习笔记,看起来是一条一条琐碎的知识点,不过这是个人做笔记的习惯。

C语言基础知识(一)

1数据类型
1.1数据类型主要包括两方面内容------数据的表示和对数据加工的操作
1.2基本的数据类型:整型,实型,字符型
复杂的数据类型:构造类型 ,指针类型,枚举类型,空类型
1.2.1 变量:其值在其作用域内可以改变的量称为变量
变量名:该名字和内存中一块地址绑定在一起,可以通过变量名直接找到对应的内存区域,也可以通过地址找到其内存区域
变量值:是变量对应的内存区域内存放的二进制序列,变量的值不会因为变量的类型发生改变而改变,只会根据类型不同,以不同形式呈现
1.3 宏定义:定义的是常量
1.4 char *p //*P访问的是p代表的地址的内存的内容
&p:取出p 的地址
(向一个地址写入字符串应该使用strcpy)
1.5 局部变量和全局变量:
1.5.1函数的形参变量只有在被调用期间才能分配内存单元,调用结束后立即释放,形参变量只有在函数内才有效
形参变量:属于被调函数的局部变量,实参变量属于主调函数的局部变量
1.5.2 全局变量(外部变量)
在一个函数内使用全局变量要用extern进行说明,但是在一个函数之前定义的全局变量,在该函数内可不再加以说明
当外部变量与局部变量同名时,在局部变量作用范围内,外部变量不起作用
1.6 常量:直接常量(字面常量):如12,10,‘a’
符号常量:如#define PI 3.14
常量的值在其作用域内不会发生改变,也不能再被赋值
一旦声明了一个常量,常量所在的内存空间就被加上了只读的属性