誰かが次のコードを説明できますか
#include<stdio.h>
main()
{
char c[]="abc\nabc";
puts(c);
}
このコードは期待どおりに生成されます:
abc
abc
しかし、ユーザーからの入力と同じ文字列を取得しようとすると、
#include<stdio.h>
main()
{
char c[]="abc\nabc";
gets(c); // i type in "abc\nabc"
puts(c);
}
このコードは以下を生成します:
abc\nabc
プログラムに改行文字を正しく読み取らせるにはどうすればよいですか?