C语言中gets函数能否只接收一个换行符 如gets(a),输入时输入回车

如题所述

由于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’。

温馨提示:答案为网友推荐,仅供参考

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网