重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
你好,gets函数的空格符包括空格 enter ,table,所以能用回车键的。希望能帮到你。
创新互联成立与2013年,是专业互联网技术服务公司,拥有项目成都网站建设、成都网站制作网站策划,项目实施与项目整合能力。我们以让每一个梦想脱颖而出为使命,1280元南丹做网站,已为上家服务,为南丹各地企业和个人服务,联系电话:18982081108
由于scanf函数遇到空格后就停止输入,如需要输入一句话的话,要尝试其他的函数例如gets()函数。
原型函数为char*gets(char*buffer),返回一个指向char的指针,返回的指针与传递给他的指针是同一个指针。
例子:
charname[20];
gets(name);
printf(“%s”,name);
此时在控制界面中输入helloworld,输出将会是helloworld。
上例同时也可以写成:
charname[20];
char*ptr;
ptr=gets(name);
printf(“%s”,name);
printf(“%s”,ptr);
此时两句话输出的都是helloworld,从而证明ptr的指针就是赋给gets函数的指针。但是gets()函数有一个缺点,当输入的字符串的长度大于申请的空间时,会造成空间越界,此时在函数执行结束释放空间时会报错。
扩展资料
1、输出字符串的效果,宽度和精度同样也适用于字符串。
3、put是需要遇到’\0’才会输出的,因此通过字符串数组遍历赋值时,不要忘记加’\0’。
C 库函数 char *gets(char *str) 从标准输入 stdin 读取一行,并把它存储在 str 所指向的字符串中。当读取到换行符时,或者到达文件末尾时,它会停止
意思就是说gets遇到换行(也就是回车符)就会停止读入,所以上面ges执行后你s1 s2分别就是book和book空格,那当然做字符串比较的话,s2是大于s1的。