簡體   English   中英

從.txt C讀取

[英]read from .txt C

我在使用C語言時遇到了一些麻煩..

我有一個文件txt與表單中的各種行:

F   65  S   4   1   139.56  3704.26

和我的計划:

p = fopen("dados.txt", "r");

if ( p == NULL) {
    printf("\n\nNao foi possivel abrir o arquivo.\n");
    exit(1);
}else{
      while ( !feof(p) ){
      fscanf(p,"%c %d %c %d %d %f %f",
          &sexo,&idade,&estadoCivil,&numFilhos,&freq,&mediaGasto,&mediaSalarial);

      printf("%c %d %c %d %d %f %f\n",
          sexo,idade,estadoCivil,numFilhos,freq,mediaGasto,mediaSalarial);
      }

回報是:

在此輸入圖像描述

看起來不好......

如果我將fscanf:%c更改為%f

回報是:

在此輸入圖像描述

看起來很棒,但變量idade總是0 ......:S

wtf我必須做什么?

您必須在scanf調用中添加換行符:

  fscanf(p,"%c %d %c %d %d %f %f\n",
      &sexo,&idade,&estadoCivil,&numFilhos,&freq,&mediaGasto,&mediaSalarial);

如果沒有scanf的換行符,第一行將是正確的,但是以下行將輸入中的換行符分配給sexo

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM