
C言語について質問です。読み取った文字を関数を使って置き換え、それをファイル出力したいのですが、a[10] = change(s)でエラーが出てしまいます。戻り値を設定すれば良いのですがどのように設定すればいいのか分かりません。分かる方お願いします。
(長くなるのでコードの前半は省略させていただきます。)
char s [5];
char a [10];
// ファイルの読み込み
while(fscanf(fin, "%s", &s) != EOF){
printf("data = %s\n", s);
}
a[10] = change(s);
fprintf(fout, "%s\n", s); //ファイル文字の出力
fprintf(fout,"%s",a); //置き換えた後の出力
// ファイルを閉じる
fclose(fout);
fclose(fin);
return 0;
}
void change(char *x){
int i;
char judge1[] = "O";
char judge2[] = "X";
for ( i = 0; i < 4; i++){
if ("%d",x[i] == 97){
printf("%s%s\n",judge1,judge2);
}
if ("%d",x[i] == 98){
printf("%s%s\n",judge1,judge2);
}
if ("%d",x[i] == 99){
printf("%s%s\n",judge2,judge2);
}
}
return ;
}
A 回答 (3件)
- 最新から表示
- 回答順に表示
No.3
- 回答日時:
「chang関数を使いOやXに置き換えたい」っていうけど, 「置き換え」るという操作は一般に
何かを何かに
ということになるから, 「何を」OやX に置き換えるのかを決めなきゃいけない.
何?
No.2
- 回答日時:
void な関数に返り値を持たない return文を書くこと自体はおかしくもなんともないよ>#1. void な関数で返り値を持つ return文を書いたり void でない関数で返り値を持たない return文を書くのはダメだけど.
という脇の話はさておき, そもそもその change なる関数でなにをしたいの? それを一切書かないで「どうしたら」っていわれても
あなたの期待するように (それがどのようなものかはまったくわからないけど) 書けばいい
としか返しようがない.
すみません。説明が足りませんでした。ファイルから読み取った文字(省略部分ですが一般的なファイルの読み込みのプログラムです)を、chang関数を使いOやXに置き換えたいのです。printfで置き換えられた事は確かめられました。しかし、そこからファイル出力に持ってく方法が分からないのです。
No.1
- 回答日時:
> 長くなるのでコードの前半は省略させていただきます。
ideone辺りに貼り付けてからリンク貼ったらイイんじゃないですか?
ideone.com
https://ideone.com/
じゃないと何がやりたいんだか、どう言うエラー出るんだかサッパリ分からん。
まあ、
> void change(char *x)
とか言ってるクセに
> return ;
があるのもおかしいし、本来なら文字列(char *)返したいんだろうけど、printfしてるし意味不明です。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Enterキーを押されたら次の処理...
-
【C言語】全角文字の配列を、全...
-
printf による16進表示について
-
VC++でSQLへSELECT文を送ったの...
-
0x8, スペース, 0x8をプログラ...
-
c言語で文書を読み込み、単語の...
-
C言語の変換する関数について教...
-
バイナリファイル(画像)のよみ...
-
main.c:7:43: warning: implici...
-
「指定されたキャストは有効で...
-
Aの値からBの値を除するとは??
-
信頼区間の1.96や1.65ってどこ...
-
20'(角度)の計算がわかりま...
-
「Aに対するBの割合」と「Aに対...
-
テキストデータをそのままバイ...
-
数字以外が入力されたらエラー...
-
正の数aは4の倍数で、7でわると...
-
DWORDの実際の型は何でしょうか
-
O(n log n)について2
-
4桁の数字以外を入力したらエラ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Enterキーを押されたら次の処理...
-
#defineが使用するメモリ領域に...
-
【C言語】全角文字の配列を、全...
-
printf による16進表示について
-
C言語で複数列のデータを1列の...
-
矢印キーを押下してコンソール...
-
VC++でSQLへSELECT文を送ったの...
-
char型2つを結合し、short型に...
-
Cでファイルの行数をカウントす...
-
ファイル操作で全角空白を消す
-
C++で指定文字列のカウント方法...
-
setjmp・longjmpに関しまして
-
WinInetのInternetOpenUrl関数...
-
C言語のプログラムで、途中で止...
-
fscanfの使い方
-
バイナリファイル(画像)のよみ...
-
csvファイルの読み取り
-
fread(),fwrite()等について
-
0x8, スペース, 0x8をプログラ...
-
ビルドエラーの対処がわからな...
おすすめ情報