MCU内存/C语言高级篇

C语言 - 高级篇

1. 程序的内存分配  

来自:http://blog.csdn.net/hairetz/article/details/4141043

  1)栈区(stack)—  由编译器自动分配释放   ,存放函数的参数值,局部变量的值等。其  
  操作方式类似于数据结构中的栈。  位于RAM
  2)堆区(heap)   —  一般由程序员分配释放,   若程序员不释放,程序结束时可能由OS回  
  收   。位于RAM
  3)全局区(静态区)(static)—,全局变量和静态变量的存储是放在一块的,初始化的  
  全局变量和静态变量在一块区域,   未初始化的全局变量和未初始化的静态变量在相邻的另  
  一块区域。   -   程序结束后由系统释放。  位于RAM
  4)文字常量区   —常量字符串就是放在这里的。   程序结束后由系统释放 。位于Flash
  5)程序代码区—存放函数体的二进制代码。 位于Flash

2. MCU/CPU Endian 大端/小端 


3. C 语言关键字:const


4. C 语言: sizeof

http://www.cnblogs.com/wangkangluo1/archive/2011/09/27/2193072.html

sizeof是C语言的一种单目操作符,如C语言的其他操作符++、--等。它并不是函数。
sizeof的使用方法:
1)、用于数据类型,如sizeof(int) 
2)、用于变量, 如sizeof(var_name)
注意:
- 当操作数是指针时,sizeof依赖于编译器。
- 当操作数具有数组类型时,其结果是数组的总字节数。
- 当操作数是具体的字符串或者数值时,会根据具体的类型进行相应转化。   例如: sizeof(8)  = 4;   sizeof(8.8)  = 8;   sizeof("ab") = 3  

-  当操作数是联合类型时,sizeof是其最大字节成员的字节数。
   

5. C 语言:size of struct, or struct alignment 


6. C 语言: volatile


7. C 语言:static


8. C 语言:指针与数组


9. C 语言:函数指针



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值