代码:
#include<stdio.h>
#include<stdlib.h>
void createAndFillList(int** ptr,int ninput){
int i;
ptr=malloc(sizeof(int)*ninput);
for(i=0;i<ninput;i++){
printf("enter: ");
scanf("%d",&*(*ptr+i));
}
printf("%p\n",&*ptr);
}
int main(){
int** ptr;
int ninput;
printf("enter how many spaces will be allocated:");
scanf("%d",&ninput);
createAndFillList(ptr,ninput);
printf("%p\n", &ptr);
getch();
free(ptr);
return 0;
}
如何返回第一个ptr
或的地址的值ptr + 0
?我尝试了所有方法,每次输入超过 1 时它似乎都会崩溃。