C言語なら俺に聞け 150

■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん (アウアウクー MM57-IE4z)
垢版 |
2019/02/06(水) 13:39:03.21ID:c4bnQMl3M

次スレを作る時は上記1行をコピーして2行に増やして必ず1行目に入るようにしてください。

C言語の話題のみ取り扱います C++の話題はC++スレへ
質問には最低限の情報(ソース/コンパイラ/OS)を付ける
数行で収まらないソースは以下を適当に使ってURLを晒す
https://paiza.io/
https://ideone.com/
http://codepad.org/

C11
http://www.open-std.org/jtc1/sc22/WG14/www/docs/n1570.pdf

C99
http://www.open-std.org/jtc1/sc22/WG14/www/docs/n1256.pdf
http://kikakurui.com/x3/X3010-2003-01.html

C FAQ 日本語訳
http://www.kouno.jp/home/c_faq/

JPCERT C コーディングスタンダード
https://www.jpcert.or.jp/sc-rules/

※前スレ
C言語なら俺に聞け 149
https://mevius.5ch.net/test/read.cgi/tech/1540731704/
VIPQ2_EXTDAT: checked:vvvvv:1000:512:----: EXT was configured
2019/03/17(日) 00:34:59.62ID:dzL2D1Cha
Cはじめましたよろしくです。これみてやってください

FILE *fp;
char *p;
char fname[100];
char str[500];

gets(fname);
fp = fopen(fname, "r");
p = fgets(str, 500, fp);

while(p != NULL){
printf("%s", str);
p = fgets(str, 500, fp);
 }
 
とやって難なくファイル表示してくれましたが、これpはしょれんじゃね?と思ってこうしてみましたの

gets(fname);
fp = fopen(fname, "r");
p = fgets(str, 500, fp);      とりあえず放置

while(str != NULL){       p→strに書き換え
printf("%s", str);
//p = fgets(str, 500, fp);   コメ停止
    fgets(str, 500, fp);      こうしてみた
 }

すると
・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・っと無限に続いて
2019/03/17(日) 00:35:16.47ID:dzL2D1Cha
なんで止まらないんでしょ?
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況