gets和puts函数

发布时间 2024-01-09 17:12:03作者: 屿川

1.gets类似于scanf函数,用于读取标准输入。scanf函数在读取字符串时遇到空格就认为读取结束,所以当输入的字符串存在空格时,需要使用gets函数进行读取。

gets函数的格式如下:

 

char *gets(char *str);

 

gets函数从标准输入中获取到字符并将其加载到str中,知道遇到换行符。当输入“how are you”,可以看到gets会读取空格,同时看到并未给数组进行初始化赋值,但是最后有"\0",这是因为gets遇到\n后,不会存储\n,而是将其转化为空字符\0。

2.puts函数类似于printf函数,用于输出标准输出。puts函数会将存储起来的"how are you"打印到屏幕上,并且进行换行,相对于printf函数,puts只能用于输出字符串,同时多打印一个换行符,等价于 printf("%s\n",c) 。

//gets一次读一行
int main()
{
char c[20];
gets(c);
puts(c);
return 0;}

//执行结果如下:
how are you //gets函数输入的
how are you //puts函数输出的