本文主要是介绍定义变量前切记分配内存,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
保存数据必须要内存
如:
void fun(int *e)
{*e = 1;
}
int main()
{
int *a ;
fun(a);
printf("%d",*a);
} -----------------------------------------------------------编译出错
void fun(int *e)
{
*e = 1;
}
int main()
{
int a ;
fun(&a);
printf("%d",a);
}--------------------------------------------------------------通过编译
void fun(int *e)
{
*e = 1;
}
int main()
{
int *a =(int *) malloc(sizeof(int)); /#include <stdlb.h>
fun(a);
printf("%d",*a);
}-----------------------------------------------------------通过编译
链表:
typedef struct _node
{
int data;
struct _node *next;
}*link_list;
link_list head; //可以这样定义 但是链表每增加一个节点也malloc了的
//顺序栈
typedef struct _stack
{
int data[10];
int top;
} stack1, *stack2;
stack2 sq_stack; //若要这样定义,必须要为它分配内存
可以直接这样: stack1 sq_stack //这样系统就自动分配内存了
这篇关于定义变量前切记分配内存的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!