fgets()读取\n的问题发现
fgets()函数会读取\n,把\n放到字符串里去,但是我发现也可以不让它把\n放进去程序代码:
# include <stdio.h> int main(void) { char str[7]; fgets(str,7,stdin); //输入:12345,预留2个字符的空间,一个放\n,一个放\0 fputs(str,stdout); //fputs本身没有换行效果,但是fgets读取了\n,输出后造成换行 return 0; }
但如果我只预留1个字符的空间去放\0,发现\n就不会读取到字符串里面去,这样合适吗