ここから本文です

fscanfで、小数が読み込めません。

hur********さん

2013/10/2420:00:11

fscanfで、小数が読み込めません。

c++初心者です。
以下のプログラムで、
fit0.txtの中身は0.5なのですが、正しく読み込めず、画面に-9.25596e+61と表示されてしまいます。
double型ではいけないのでしょうか。
ご教授お願い致します。
メインの中身のみ示します。

int main(){

double ret;
double getd;
double fitness;
FILE *fpn;
fpn =fopen("fit0.txt","r");
if(fpn==NULL){
cout << "えらーー\n";
}
ret =fscanf(fpn,"%d",&getd);
fitness = getd;
fclose(fpn);

cout << getd << "\n";
}

閲覧数:
2,141
回答数:
1
お礼:
50枚

違反報告

ベストアンサーに選ばれた回答

rei********さん

2013/10/2420:19:47

>ret =fscanf(fpn,"%d",&getd);
%dだとint型で読み込んじゃうよ。
%lfに変えてみてください。

質問した人からのコメント

2013/10/24 20:43:09

ありがとうございます!!

この質問につけられたタグ

みんなで作る知恵袋 悩みや疑問、なんでも気軽にきいちゃおう!

Q&Aをキーワードで検索:

Yahoo! JAPANは、回答に記載された内容の信ぴょう性、正確性を保証しておりません。
お客様自身の責任と判断で、ご利用ください。
本文はここまでです このページの先頭へ

「追加する」ボタンを押してください。

閉じる

※知恵コレクションに追加された質問は選択されたID/ニックネームのMy知恵袋で確認できます。

不適切な投稿でないことを報告しました。

閉じる