![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?e8efa67)
テキストファイルの読み込みについて質問です。
あらかじめ用意されたテキストファイルを1行読み込み、 読み込んだ文字列内で特定の文字を検索する以下の プログラムを作成せよ。
(1)Emacs(Visual Studio)を用いて「風が吹けば桶屋が儲かる。」をローマ字で入力し、okeya.txt というファイル名で保存せよ。
(2)つぎに、この okeya.txt を読み込み、文字列内で文字の 'a'が 何番目にあるかをすべて列挙表示するプログラムokeya.cを 作成せよ。なお、文字列の先頭文字(K)の位置を第1番目とする。
文字列中の特定文字の検索にはポインタを用いること。
まずは「風が吹けば桶屋が儲かる」(ローマ字)を表示したかったのですが、コンパイルした結果、何も表示されませんでした。
表示されるにはどうしたら良いですか?
Visual Studioを使用してます。
ソースコード
pragma warning(disable: 4996)
include <stdio.h>
include <stdlib.h>
constexpr auto N = 256;
int main(void) {
FILE* fp;
char filename[] = "okeya.txt";
char str[N];
fp = fopen(filename, "r");
if (fp == NULL) {
printf("%s file not open!\n", filename);
exit(1);
}
while (fgets(str, N, fp) != NULL) {
printf("%s", str);
}
fclose(fp);
return (0);
}
okeya.txt
Kazega hukeba okeyaga moukaru
A 回答 (6件)
- 最新から表示
- 回答順に表示
No.6
- 回答日時:
> そこから質問したソースコードが入ってるファイルに一緒に入れたら上手くいった感じです。
と言うこたぁ、やっぱり、
1. 最初のokeya.txtを入れるディレクトリが間違っていた
か、あるいは
2. Visual Studioでokeya.txtを作ったつもりが拡張子がおかしな事になってた
かのどっちか、でしょうね。
あー、Windowsはキチンと拡張子見える設定にしてますかね?
No.5
- 回答日時:
> 色々いじくったら上手くいきました。
おお、良かったですね。おめでとう!
ぶっちゃけ、Visual Studioって業務用として考えるとプロジェクト単位の管理、とか良く出来てると思うんだけど、学習用には向かねぇなぁ、とか言うのがひっさびさに弄った結論です(笑)。
もっとシンプルでエエのに、とか思うんですけどね〜。
ちなみにやり方なんですけど、Windowsのメモ帳に「Kazega hukeba・・・」と書いた後にデスクトップに保存・移動させて、そこからVisual Studioに持っていって上手くいきました。
そこから質問したソースコードが入ってるファイルに一緒に入れたら上手くいった感じです。
No.3
- 回答日時:
一応確認ですが, 「コンパイルした」だけでは何も表示されないですよ. ちゃんと実行もしてあげてください.
ところで「Emacs(Visual Studio)を用いて」ってどういう意味なんだろう....
No.2
- 回答日時:
> Visual Studioだと上手くいかないとかありますかね?
うーん、イカんなこりゃ。
Visual Studioってムズい・・・・・・。
ええとね、多分、okeya.txtを置く場所が違ってんじゃないか、と。
こっちでも(あんまWindows使わないんで)久々にWindows起動してVisual Studio使って確認してみたんですが・・・・・・。
多分、okeya.cppってファイルと同じ場所に置けば読み込んでくれる筈です。要するにokeya.txtを置く場所を間違えてんじゃないか。
プロジェクト名/プロジェクト名と言うディレクトリの中になる筈です。
そこにokeya.cppがあって、そこにokeya.txtを置けば上手く動くんじゃないかなぁ。
No.1
- 回答日時:
うーん、問題なくね?
> constexpr auto N = 256;
これだけはC++でCじゃないだろうから、
#define N 256
に直したけど、問題なくコンパイルされて実行されてますよ。
(コンパイラはclangを使ったけどね)
![「Cプログラム テキストファイルの読み込み」の回答画像1](http://oshiete.xgoo.jp/_/bucket/oshietegoo/images/media/2/525078_60a9de1cb654c/M.png)
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- C言語・C++・C# プログラミングの授業の課題です 1 2023/01/17 22:15
- C言語・C++・C# このプログラミング誰か教えてくれませんか 1 2022/06/02 15:27
- C言語・C++・C# c言語 プログラムのエラー 1 2023/02/11 20:31
- Excel(エクセル) PHPプログラムをエクセルに張り付けると検索ボックスがでてくる! 3 2022/05/08 07:10
- Excel(エクセル) Excelにて、フォルダ内のTextファイルをマクロで統合すると文字化けしてしまう時の解消コード 4 2023/01/01 07:32
- C言語・C++・C# c言語の問題の説明、各所ごとに 5 2023/07/26 11:03
- C言語・C++・C# str[j++]の意味 2 2022/08/30 16:20
- C言語・C++・C# 宣言する関数の形が決まっている状態で、 str1とstr2の文字列をこの順に引っ付けてstrに保存し 2 2022/05/30 18:21
- C言語・C++・C# c言語配列の結合についてです。 なぜうまくいかないのでしょうか。 #include <stdio.h 4 2022/05/30 22:42
- C言語・C++・C# バイナリファイルをコピーするのにかかる時間を測りたいのですが実行するとFatel error:gli 2 2022/11/03 01:10
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
VBAを何回も作り直して、容量が...
-
Makefile作成時の拡張子.oとは?
-
PRO*C コンパイルエラー
-
” OS ビルド ” の意味が分か...
-
エクセルVBAではRound...
-
Borland C++ Compiler 5.5につ...
-
マクロ コンパイルがグレーバック
-
「fatal error C1189」を回避す...
-
C言語でヘッダファイルにグロー...
-
「utime.h が見つからない」エ...
-
exe内に記述したパスワードにつ...
-
timeGetTime関数を使用できません
-
複数のサブディレクトリを一緒...
-
ILSpyで、デコンパイルできない。
-
セミコロンについて
-
定数式とはどういう意味でしょ...
-
ヘッダファイルを使わずに定義...
-
bccでwinmm.libをリンクする方...
-
1 つ以上の複数回定義されてい...
-
C++コンパイル時に『 C1083: in...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
VBAを何回も作り直して、容量が...
-
<math.h>があるのにsqrtが・...
-
Makefile作成時の拡張子.oとは?
-
C言語でヘッダファイルにグロー...
-
エクセルVBAではRound...
-
1 つ以上の複数回定義されてい...
-
「fatal error C1189」を回避す...
-
ILSpyで、デコンパイルできない。
-
” OS ビルド ” の意味が分か...
-
外部シンボル "_main"は未解決です
-
セミコロンについて
-
C++コンパイル時に『 C1083: in...
-
マクロ コンパイルがグレーバック
-
[c++] <pthread.h>がinclude で...
-
コンパイルエラー:ユーザ定義...
-
ビルドとリビルドの違いを教え...
-
クリティカルエラー Expressio...
-
sys/types.hの必要性について
-
【VC++6.0(MFC)】警告「LINK : ...
-
PRO*C コンパイルエラー
おすすめ情報
そうなんですね。。。
Visual Studioだと上手くいかないとかありますかね?
それともokeya.txtの作成方法が間違ってるとか。。