C语言 一个指数形式的数字占几个字节,属于double么? 5

我想实现在一个文件中读入数字,操作后写入原来的位置,就用了fseek函数,但是数字老是对不上号,求高手指点。... 我想实现在一个文件中读入数字,操作后写入原来的位置,就用了fseek函数,但是数字老是对不上号,求高手指点。 展开
 我来答
495006387
2013-01-08 · TA获得超过338个赞
知道小有建树答主
回答量:196
采纳率:0%
帮助的人:262万
展开全部

float和double都是浮点数,它们在内存中都不是直接存放每一位的,而是按照写成了X乘以2的e次方的形式,然后在内存中存放X和e的值,但是标准又各有不同。

而float型占的字节是double型的一半,32位机器上float型占4字节,double型占8字节。

#include<conio.h>

#include<stdio.h>

#include<math.h>

#include<stdlib.h>

int main()

{

 FILE *fp;

 if((fp=fopen("e:\\double.txt","r"))==NULL)

  exit(-1);

 char digit[100];

 double a;

 while(!feof(fp))

 {

  fscanf(fp,"%s",digit);

  a=atof(digit);//这个是将字符串转成双精度数,如果数字字符串精度过大(就是过长)自动截断 

  printf("%10f\n",a);//10表示的是这个double型的数字输出来的格式共占了10位 

 }

 getch();

 return 0;

}

double.txt中的内容为

 

TableDI
2024-07-18 广告
Excel一键自动匹配,在线免费vlookup工具,3步完成!Excel在线免费vlookup工具,点击98步自动完成vlookup匹配,无需手写公式,免费使用!... 点击进入详情页
本回答由TableDI提供
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式