标题:关于float换成了double错误问题……
只看楼主
davidguhao
Rank: 1
来 自:广东
等 级:新手上路
帖 子:126
专家分:7
注 册:2016-7-18
结帖率:89.47%
已结贴  问题点数:20 回复次数:6 
关于float换成了double错误问题……
程序代码:
// fscanfnums.c--使用fscanf读取格式化的文件数据
#include <stdio.h>
#include <stdlib.h>
int main(void)
{
    float f1, f2, f3, f4, f5;
    FILE *fp;

    if ( (fp = fopen("C:\\Users\\david\\Desktop\\numberinput.txt", "r") ) == NULL)
    {
        fprintf(stderr, "Error opening file.\n");
        exit(1);
    }

    fscanf(fp, "%f %f %f %f %f", &f1, &f2, &f3, &f4, &f5);
    printf("The values are %f, %f, %f, %f, and %f\n",
        f1, f2, f3, f4, f5);

    fclose(fp);
    return(0);
}


我希望将f1f2f3f4f5换成double可是程序会出现问题……可以通过编译但是程序输出的就是乱七八糟的……

这是为什么
搜索更多相关主题的帖子: include double 
2016-08-16 08:25
zhaoya881010
Rank: 9Rank: 9Rank: 9
来 自:芒砀古郡
等 级:蜘蛛侠
威 望:1
帖 子:339
专家分:1177
注 册:2010-11-21
得分:0 
可否把你的文件内容贴出来,大家看看

Go Go Go
2016-08-16 08:28
zhaoya881010
Rank: 9Rank: 9Rank: 9
来 自:芒砀古郡
等 级:蜘蛛侠
威 望:1
帖 子:339
专家分:1177
注 册:2010-11-21
得分:0 
f 4个字节,d 8个字节。

Go Go Go
2016-08-16 08:30
linlulu001
Rank: 13Rank: 13Rank: 13Rank: 13
等 级:贵宾
威 望:20
帖 子:944
专家分:4047
注 册:2016-4-13
得分:0 
你的txt文件呢,也发出来
2016-08-16 09:28
rjsp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:507
帖 子:8890
专家分:53117
注 册:2011-1-18
得分:20 
%f 也要换成 %lf 吧
2016-08-16 12:16
davidguhao
Rank: 1
来 自:广东
等 级:新手上路
帖 子:126
专家分:7
注 册:2016-7-18
得分:0 
回复 5楼 rjsp
谢谢您,问题解决了!
不过,我还是有个小疑问……可能比较扣牛角尖
fscanf在扫描磁盘文件时, 若是第一次遇到了与转换说明符不同的字符, 会忽略并且停止扫描(即使后面有合乎条件的也不管了)。仅对于float类型数值

若是double类型数值, 那么将会造成遇到转换说明符不同的字符,会开始变成乱码

暨南大学市场营销……
但是我有一颗计算机专业的心……
2016-08-16 22:20
rjsp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:507
帖 子:8890
专家分:53117
注 册:2011-1-18
得分:0 
以下是引用davidguhao在2016-8-16 22:20:54的发言:

谢谢您,问题解决了!
不过,我还是有个小疑问……可能比较扣牛角尖
fscanf在扫描磁盘文件时, 若是第一次遇到了与转换说明符不同的字符, 会忽略并且停止扫描(即使后面有合乎条件的也不管了)。仅对于float类型数值
 
若是double类型数值, 那么将会造成遇到转换说明符不同的字符,会开始变成乱码

没听懂
但float和double在处理上是一致的,不可能有差别
2016-08-17 09:36



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-467903-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.234783 second(s), 8 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved