[英]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.