エントリーの編集
エントリーの編集は全ユーザーに共通の機能です。
必ずガイドラインを一読の上ご利用ください。
数値をscanf()で読んだあと、文字列をfgets()で読む by Inquisitor
記事へのコメント0件
- 注目コメント
- 新着コメント
このエントリーにコメントしてみましょう。
注目コメント算出アルゴリズムの一部にLINEヤフー株式会社の「建設的コメント順位付けモデルAPI」を使用しています
- バナー広告なし
- ミュート機能あり
- ダークモード搭載
関連記事
数値をscanf()で読んだあと、文字列をfgets()で読む by Inquisitor
学生向け 次のようなコードで、数値と文字列を入力するとします。 #include <stdio.h> int main(){ int ... 学生向け 次のようなコードで、数値と文字列を入力するとします。 #include <stdio.h> int main(){ int num; char ch,str[5]; printf("num: "); scanf("%d",&num); printf("num= %d\n\n",num); printf("str: "); fgets(str,sizeof(str),stdin); printf("str= \"%s\"\n",str); return 0; } 実行すると次のようになってしまいます。 num: 10 num= 10 str: str= " " 数値をscanfで読み込むとき、数値の後の文字列(改行を含む)はバッファに残ります。すぐ後に文字列を読み込もうとすると、バッファに残った文字列(ここでは改行)をまず読んでしまうので、期待する結果になりません。 このようなsc