指针对我来说是一件新事物,我很难理解它,但我不会放弃并希望能够学习它.
scanf ("%d", *p)和之间会有什么区别scanf ("%d", p)?
在示例中,我看到如果我想在变量中输入一些值,我应该使用scanf ("%d", p).这对我来说没有意义.不应该scanf ("%d", *p)吗?
我将其解释为:"在指针指向的位置放置一些整数值",例如它指向变量x然后它应该是x = 10,但事实并非如此.然后如何使用scanf()和指针在数组中设置值?
我在哪里以及出错了什么?我正在尝试使用C语言学习这个,因为它是我应该在我的班级中使用的语言.
例如:
#include <stdio.h>
int main () {
float x[10], *p;
int i;
p = &x[0];
for (i = 0; i < 10; i++) {
scanf("%d", p + i);
}
for (i = 0; i < 10; i++) {
printf("%d", *(p + i));
}
return 0;
}
Run Code Online (Sandbox Code Playgroud)
为什么只p + i在第一个for …