/* 好的,这是相关代码 */
int
main(int argc, char *argv[]) {
int *v1, *v2, *v3;
printf("Enter three integers: ");
scanf("%d %d %d", v1, v2, v3);
printf("We made it this far?\n");
/* Other stuff after */
return 0;
}
/* 当使用任意三个整数的输入时,它将成功地将这些值分配给 *v1、*v2,但在尝试将第三个整数分配给 v3 时程序将超时。当我给出三个以上的整数时也会发生这种情况。我对程序进行了分段,并逐一扫描整数,在这个过程中:*/
int
main(int argc, char *argv[]) {
int *v1;
int *v2;
int *v3;
printf("Enter three integers: ");
scanf("%d ", v1);
printf("%d\n", *v1);
scanf("%d ", v2);
printf("%d\n", *v2);
scanf("%d\n", v3);
printf("%d\n", *v3);
printf("We made it this far?\n");
return 0;
}
/* 我真的看不出问题是什么。格式说明符看起来很好,问题在于无论变量名称、输入或其他任何内容。我在 VSCode 上运行,我们一次也没有进入调试打印“我们已经做到这一步了吗?”任何帮助将不胜感激!
下面的代码将 int 转换为指针。程序将 int 变量的地址与指针相匹配。然后当你编辑int变量时,你可以看到相关的指针。我希望以另一种方式帮助您:
#include <stdio.h>
int main (int argc, char *argv[]) {
int v1;
int v2;
int v3;
int *p1 = &v1;
int *p2 = &v2;
int *p3 = &v3;
printf ("Enter three integers: ");
scanf ("%d", &v1);
printf ("%d\n", *p1);
scanf ("%d", &v2);
printf ("%d\n", *p2);
scanf ("%d", &v3);
printf ("%d\n", *p3);
printf ("We made it this far?\n");
return 0;
}