C——通过调用函数分配内存
来源:互联网 发布:js 给方法注释 编辑:程序博客网 时间:2024/04/29 09:44
1)以返回值方式返回:把动态分配的存储位置地址,赋值给指针类型返回值(不同于被调用函数的自动变量地址)
2)以形参形式返回:二级指针类型做形参
3
4 void fun(int* p){
5 p = (int*)malloc(sizeof(int));
6 }
7
8 int main(){
9 int* p_int = NULL;
10 fun(p_int);
11
12 printf("%d\n", *p_int);
13 return 0;
14 } //段错误
--------------------------------
1 #include <stdio.h>
2 #include <stdlib.h>
3
4 int* fun(void){
5 return (int*)malloc(sizeof(int));
6 }
7
8 int main(){
9 int* p_int = NULL;
10 p_int = fun();
11
12 *p_int = 12345;
13
14 printf("%d\n", *p_int);
15 free(p_int);
16 return 0;
2 #include <stdlib.h>
3
4 void fun(int** p){
5 *p = (int*)malloc(sizeof(int));
6 }
7
8 int main(){
9 int* p_int = NULL;
10 fun(&p_int);
11 printf("%x\n", p_int);
12 return 0;
2)以形参形式返回:二级指针类型做形参
1 #include <stdio.h>
2 #include <stdlib.h>3
4 void fun(int* p){
5 p = (int*)malloc(sizeof(int));
6 }
7
8 int main(){
9 int* p_int = NULL;
10 fun(p_int);
11
12 printf("%d\n", *p_int);
13 return 0;
14 } //段错误
--------------------------------
1 #include <stdio.h>
2 #include <stdlib.h>
3
4 int* fun(void){
5 return (int*)malloc(sizeof(int));
6 }
7
8 int main(){
9 int* p_int = NULL;
10 p_int = fun();
11
12 *p_int = 12345;
13
14 printf("%d\n", *p_int);
15 free(p_int);
16 return 0;
17 }//以返回值的方式返回动态申请的内存地址
---------------------------------
1 #include <stdio.h>2 #include <stdlib.h>
3
4 void fun(int** p){
5 *p = (int*)malloc(sizeof(int));
6 }
7
8 int main(){
9 int* p_int = NULL;
10 fun(&p_int);
11 printf("%x\n", p_int);
12 return 0;
13 } //通过传入参数二级指针返回
----------------------------------
不可以把局部变量的地址赋值给指针类型的返回值(生命周期决定的)
同类型结构体变量之间可以直接赋值。
0 0
- C——通过调用函数分配内存
- C——通过调用函数分配内存
- C内存—>内存分配
- 通过函数调用分配空间
- 函数调用 与 内存分配
- C++调用函数分配内存
- C语言—常见的内存分配函数
- 【C/C++语言基础学习】在主函数的定义的指针数组、二维数组通过三级指针在被调用函数分配内存
- c的内存分配函数
- C语言内存分配函数
- c语言函数内存分配
- c语言内存分配函数
- 指针函数&内存分配 C
- C语言内存分配函数
- C语言内存分配函数
- C 语言内存分配函数
- 一个Ip2long函数,通过调用go tool pprof分析,竟发现内存分配了3G
- 显示调用构造函数 不分配内存
- SharePoint管理中心配置资源限制(大型列表)
- pat 1002 写出这个数
- android常用样式
- PL/SQL 学习笔记(1)
- cocos2dx添加文本的三种方法及适用情况CCLabelTTF,CCLabelBMFont,CCLabelAtlas
- C——通过调用函数分配内存
- 【LeetCode】ZigZag Conversion
- 标准C程序设计-格式化输入
- OCP-1Z0-051-题目解析-第35题
- HDOJ 1717 小数化分数2
- POJ 3074 SUKODU [Dancing Links DLX精准覆盖问题]
- Base64Coder方式实现android向jsp服务器后台上传图片
- ssh日志工具配置
- 为什么程序员下班不关电脑呢?