c语言基础5

内存的划分以及用途:

静态区:保存程序中的全局变量、静态局部变量。程序运行期间这些变量一直存在。

动态区(栈):保存局部变量,以及函数调用过程中现场的保存。

堆:动态分配的空间.一般由malloc函数分配,由free函数释放。其生命周期是在没有释放之前一直存在的,知道程序结束。

容易犯的错误:

1.定义一个指针,没有为其赋值,就利用指针对其赋值。

char *p

strcpy(p,”ABCDEF“);

没有为p分配指向的空间,将字符赋值给指针变量,出现无法预料的错误。

int *p;

*p=5;

p没有指向确定的空间就对其所指的空间赋值

原文地址:https://www.cnblogs.com/byking/p/2962309.html