ファイルの扱いについて

フォーラム(掲示板)ルール
フォーラム(掲示板)ルールはこちら  ※コードを貼り付ける場合は [code][/code] で囲って下さい。詳しくはこちら
じゅーず

ファイルの扱いについて

#1

投稿記事 by じゅーず » 7年前

CVSファイルを読み込み、読み込んだ文字列を出力するというプログラムです。
文字列を読み込ませる際にエラーが発生してしまい、思っている動作ができません。
どうして間違っているのか、どのように修正すれば出力されるのか教えてください。

CSVファイル内もコード内に記載します。

コード:

#include<stdio.h>
int main(void)
{
	int i;
	char S1[10];
	FILE *fp;

	fp = fopen("goju.csv", "r");
	if (fp == NULL) {
		printf("ファイルは開けません\n");
		return 1;
	}
	else {
		printf("ファイルは開きました\n");
	}

	for (i = 0; i < 7; i++) {
		fscanf(fp, "%s", S1[i]);
	}

	fclose(fp);

	for (i = 0; i < 7; i++) {
		printf("%s\n",S1[i]);
	}
	return 0;
}

goju.csvのファイル内容

あいうえお
かきくけこ
さしすせそ
たちつてと
なにぬねの
はひふへほ
まみむめも


ユーマ
記事: 33
登録日時: 7年前

Re: ファイルの扱いについて

#2

投稿記事 by ユーマ » 7年前

試してないのでわかりませんが、
for (i = 0; i < 7; i++) {
fscanf(fp, "%s", S1);
}
のところはfscanf(fp, "%s", S1);だけでいいのではないのでしょうか。

間違っていたら申し訳ないです

かずま

Re: ファイルの扱いについて

#3

投稿記事 by かずま » 7年前

文字列を入れる場所が足りません。

コード:

    char S1[7][100]; に変更してみましょう。
 

ユーマ
記事: 33
登録日時: 7年前

Re: ファイルの扱いについて

#4

投稿記事 by ユーマ » 7年前

いま、試したところ自分の言ったことは間違っていました。
#3の方がおっしゃったことが正しいようです。

お騒がせしてしまいもうしわけないです。

じゅーず

Re: ファイルの扱いについて

#5

投稿記事 by じゅーず » 7年前

かずま さんが書きました:
7年前
ありがとうございました。
多次元配列を用いることで可能なのですね

返信

“C言語何でも質問掲示板” へ戻る