//1.栈区:特性先进后出(后进先出) //栈的特性 /* int a=10;//1 int b=10;//2 int c=10;//3 //创建顺序:123 //销毁顺序:321 //每一个函数都有一个栈帧 test(); int f=10; */ //函数中的变量一旦函数执行完成.全部被销毁. /* char *p=test2(); printf("%s",p); */ //2.堆区:程序员手动分配的内存,并且需要程序员手动销毁.(有几个专门的内存函数) 特点:一旦分配不管在什么地方.没有被手动销毁,他一直存在,直到程序结束. //3.常量区:我们编写的程序种所有的常量都被放在常量区,直到程序结束为止 //4.静态区:1.全局变量.(所有大括号外边的变量).2.static标注的变量; /* for (int i=0; i<3; i++) { static int count =0;//这句话只执行一次 //被static标注的变量会有一个初始值0; count++; printf("%d",count); } */ //5.代码区:我们编写的代码被编译器翻译之后,存入代码区 //malloc堆内存分配 //按照字节分配 //分配好的空间,使用什么类型的指针指向它,它就是什么类型的. /* int *p=malloc(4); *p=10; printf("%d",*p); */ /* char *s=malloc(100); strcpy(s, "大家好,我很
栈区,堆区,常量区,静态区代码区
最新推荐文章于 2023-10-08 14:38:12 发布