1.描述

char* gets( char* str)函数:从标准输入(stdin)读取字符串,遇到空格不结束,直到遇到回车,将字符串存储到str指向的字符串。

2.gets()和scanf( )的区别

gets(str)和scanf(“%s”,str)作用类似,但又有所不同。主要区别在于:

gets(str):读到回车换行才结束读取,遇到空格不结束读取

scanf(“%s”,str):遇到空格就结束读取。

#include int main(){char str1[20] = { 0 };char str2[20] = { 0 };gets(str1);scanf("%s",str2);printf("str1=%s\n",str1);printf("str2=%s\n", str2);return 0;}

打印结果:

这里顺便说一下printf( )和puts( ) 的区别

puts( )在输出字符串时会自动换行

#include int main(){char str[20] = { 0 };gets(str);puts(str);//等价于printf("%s\n", str);printf("%s\n", str);return 0;}