gpt4 book ai didi

c - 访问冲突写入位置 0x00000000。从键盘读取 int

转载 作者:太空狗 更新时间:2023-10-29 16:42:05 24 4
gpt4 key购买 nike

我正在尝试从键盘读取输入,我将使用它来创建一组乘法。如果我硬编码要使用的整数,那么程序可以正常工作,但是当我让用户输入他们自己的数字时,程序崩溃并显示有关访问冲突的错误。

我确信这很简单,但由于我是 C 的新手,所以我不完全确定使用该语言时要遵循的所有原则。

#include <stdio.h>
#include <string.h>
#include <math.h>

void main()
{
int multiple = 0;
int i;
int answer;

printf("Enter the multiple you wish to use...");
scanf("%d", multiple);

printf("The multiplication table for %d is", multiple);

for(i = 1; i <= 10; i++)
{
answer = i * multiple;

printf("%d X %d = %d",i,multiple,answer);
printf("\n");
}

printf("Process completed.");
}

注意:我将 multiple 的初始值设置为 0,否则在尝试使用未初始化的值时会遇到错误。

最佳答案

scanf("%d", multiple);

应该是:

scanf("%d", & multiple);

换句话说,你需要给 scanf 一个指向你想读入的东西的指针。这是使用 scanf() 时的一个典型错误,每个人都会不时犯这个错误,所以下次犯这个错误时请记住这个 :-)

关于c - 访问冲突写入位置 0x00000000。从键盘读取 int,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2164544/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com