指针使用自定义函数开辟的内存,为何不能在主函数中调用?
如题,比如#include<stdio,h>#include<stdlib.h>voidmalloc_num(int*num){num=(int*)malloc(8*si...
如题,比如
#include<stdio,h>
#include<stdlib.h>
void malloc_num(int *num)
{
num = (int *)malloc(8*sizeof(int));
for(int i = 0;i <8;i++)
{
num[i] = i;
}
}
void main()
{
int *num;
malloc_num(num);
for(int t = 0;t <8 ;t++)
{
printf(“%d”,num[t]);
}
}
为何不能如果我想实现这样的函数开辟内存功能,并在主函数中调用该数组,该如何写呢? 展开
#include<stdio,h>
#include<stdlib.h>
void malloc_num(int *num)
{
num = (int *)malloc(8*sizeof(int));
for(int i = 0;i <8;i++)
{
num[i] = i;
}
}
void main()
{
int *num;
malloc_num(num);
for(int t = 0;t <8 ;t++)
{
printf(“%d”,num[t]);
}
}
为何不能如果我想实现这样的函数开辟内存功能,并在主函数中调用该数组,该如何写呢? 展开
1个回答
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询