And*_*ico 11
scanf不接受"运算符(&)的地址".它需要一个指针.通常,通过在scanf调用中使用address-of运算符来获取指向输出变量的指针,例如
int i;
scanf("%i", &i);
printf("number is: %d\n", i);
Run Code Online (Sandbox Code Playgroud)
但这不是唯一的方法.以下内容同样有效:
int* iPtr = malloc(sizeof(int));
scanf("%i", iPtr);
printf("number is: %d\n", *iPtr);
Run Code Online (Sandbox Code Playgroud)
所以是:
int i;
int iPtr = &i;
scanf("%i", iPtr);
printf("number is: %d\n", i);
Run Code Online (Sandbox Code Playgroud)