gpt4 book ai didi

c - Scanf 没有双读

转载 作者:太空宇宙 更新时间:2023-11-04 05:17:32 24 4
gpt4 key购买 nike

我正在尝试使用 scanf 从用户处连续读入一个 double 值。

代码:

printf("Enter A value: \n");
double input;
int result = scanf("%f", &input);
printf("INPUT: %f\n", input);

输出是

INPUT: 0.000

最佳答案

你对编译器撒了谎:扫描时,%f 说你提供了一个指向 float 的指针。但是您提供了指向 double 的指针。

要修复,请使用 %lf input 声明为 float

请注意,printf 格式存在不对称性,%f 用于 floatdouble争论。这是有效的,因为 printf 参数被提升为 double(并且不是指针)。

关于c - Scanf 没有双读,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33269283/

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