C语言 学习笔记
1、关于#include “device.h” 与 #include <device.h>的区别?
//对于#include "device.h",编译器从用户的工作路径开始搜索 device.h;
#include "device.h"
//对于#include <device.h>,编译器从标准库路径开始搜索 device.h;
#include <device.h>
2、const的用途?
可以定义 const 常量;
可以修饰函数的参数、返回值、甚至是函数的定义体,被const修饰的东西都受到强制保护,可以预防意外的变动,提高程序的健壮性。
3、内存分配的方式?
有三种方式:
一是从静态存储区分配,这块内存在程序编译的时候就已经分配好了,在程序的整个运行期间都会存在,如全局变量,static变量;
二是在栈上创建,执行函数时,函数内局部变量的存储单元都可以在栈上创建,函数执行结束时这些存储单元自动被释放,栈内存分配运算内置于处理器的指令集中效率很高,但容量有限;
三是从堆中分配(动态内存分配),使用malloc申请,free释放,使用灵活,但问题也最多。