gpt4 book ai didi

c - 为什么 scanf 扫描的数字与我输入的数字不同?

转载 作者:行者123 更新时间:2023-11-30 18:44:22 25 4
gpt4 key购买 nike

所以我使用 C 几天了,以前没有这个问题,但现在我遇到了 C 扫描与用户输入的数字不同的数字的问题。我觉得它打印了数字的位置,但不打印数字本身。我每次得到的数字是 6422076,如果我打印从用户那里扫描的另一个数字,它只会显示相同的数字 -4, 6422072 所以我很确定这与计算机存储数字的位置有关.

我尝试用其他几种方式打印它,但总是得到相同的奇怪数字。

void measures()
{
int height;

printf("\nEnter your height:\n");
scanf("%d",&height);
while(height<140 || height>210){
printf("Invalid input, try again: \n");
scanf("%d",&height);
}

printf("height: %d\n",&height);
}

没有收到任何错误

最佳答案

这是你的问题:

printf("height: %d\n",&height);

您没有打印高度的值。您正在打印其地址。删除地址运算符:

printf("height: %d\n",height);

关于c - 为什么 scanf 扫描的数字与我输入的数字不同?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58355575/

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