感谢大佬从原理进行的讲解
但是如果我需要一个函数对数组进行处理,并返回一个新数组该如何处理呢?比如下面
这个错误程序把数组每一项都减5
int* test(int* b)
{
int i;
int *p;//无地址的野指针?
for(i=0;i<5;i++)
{
*(p+i)=*(b+i)+10;
}
return p;
}
int main()
{
int arr[5]={1,2,3,4,5};
printf("%d \n",*arr) ;
int* pa;
pa=test(arr);
printf("%d \n",*pa) ;
return 0;
}
【 在 z16166 的大作中提到: 】
: 函数是区分形参、实参的
: int *test(int b)
: {
: ...................
--
FROM 111.193.230.*