
C言語でファイルの内容を strtok関数 を使って数字と文字を分けて配列に格納したいのですが、うまくできません。
どこが駄目なのかご指摘をお願いします!
ファイル内容
20
田中
10
鈴木
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
int main(int argc,char *argv[])
{
FILE *fp;
char str[256];
char *tp;
int i=0;
int num[10];
char na[10];
fp=fopen(argv[1],"r");
while(fgets(str,sizeof str,fp)!=NULL);
tp = strtok ( str, " " );
while(tp != NULL ) {
num[i]=atoi(tp);
tp = strtok( NULL," ");
if ( tp != NULL ){
na[i]=*tp;
}
i++;
}
printf("%d\n%s",num[0],na[0]);
printf("%d\n%s",num[1],na[1]);
fclose(fp);
return 0;
}
A 回答 (3件)
- 最新から表示
- 回答順に表示
No.3
- 回答日時:
>while(fgets(str,sizeof str,fp)!=NULL);
これは、ファイルの終わりに到達するまで
何もしないで読み続けるだけである、
という意味を持っていることは理解できていますか?
No.2
- 回答日時:
宣言と、代入が駄目そうな気が・・・
>char na[10];
>na[i]=*tp;
を
char na[10][16];
strcpy(na[i],tp);
とか変更してみては?
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
InternetReadFileを使ったファ...
-
C言語でファイル読み書きを早く...
-
ファイル出力で改行を入れたい!
-
c言語でのfscanfについて
-
csvファイルの読み込み
-
fopenでファイル名に、変数を使...
-
セグメンテーションエラーです
-
ファイルからCR/LFを除去したい
-
VisualStudioでのファイルの入...
-
ライブラリ関数と同名のメンバ関数
-
Aの値からBの値を除するとは??
-
信頼区間の1.96や1.65ってどこ...
-
Enterキーを押されたら次の処理...
-
fgetsなどのときのstdinのバッ...
-
「Aに対するBの割合」と「Aに対...
-
エクセルで可視セルにのみ値貼...
-
C言語での引数の省略方法
-
#define _CRT_SECURE_NO_WARNIN...
-
プログラムでの数字につく”f”の...
-
ある商品のロス率を5%見込み、...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
テキストファイル内に対して, ...
-
複数ファイルの同時読み込みの...
-
C言語でファイル読み書きを早く...
-
ファイル出力で改行を入れたい!
-
なぜCSQとCIP形式ではコ...
-
fopenでファイル名に、変数を使...
-
c言語でのfscanfについて
-
C言語にてXMLファイルから任意...
-
_popen() のエラー取得
-
数値のみ抽出(C言語)
-
ランダムアクセスができない
-
C言語でのCSVソートとデータ抽...
-
C言語 連番データの読み込み
-
ファイルの作成・書き込み・読...
-
fscanfでループしてしまう。
-
ファイルへの書込み処理が異常...
-
ファイルを読み込んで条件式を...
-
CSVファイルを読み込み構造体の...
-
C言語でセグメンテーションエ...
-
C言語について
おすすめ情報