malloc函数申请动态内存的用法

咱们开门见山吧,直接上代码更容易理解

// An highlighted block
 1 #include <stdio.h>
 2 #include <stdlib.h>
 3 #include <string.h>
 4 
 5 struct student
 6 {
 7     char *name;
 8     int age;
 9 };
10 
11 int main()
12 {
13     struct student *p_student=NULL;
14     p_student=((struct student *)malloc(sizeof(struct student)));
15     if(p_student == NULL)
16     {
17         printf("Failed to apply for memory space!\n");
18         exit(1);
19     }
20 
21     p_student->name="Tom";
22     p_student->age=23;
23 
24     printf("name:%s\n",p_student->name);
25     printf("age:%d\n",p_student->age);
26 
27     free(p_student);
28   p_student=NULL;//注意,释放掉了malloc空间,但结构体指针依然存在,仍需要指向NULL;
29     return 0;
30 }

malloc函数的用法很简单。首先定义一个指针变量,然后使用malloc函数申请一块动态内存,接着判断申请动态内存有无成功。如果p_student == NULL,则说明申请动态内存失败。

需要注意的是,定义指针变量p_student时指向NULL;使用free函数释放了申请的动态内存malloc空间后,指针变量p_student仍然存在,因此仍需要指向NULL。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值