关于vs2019输入带空格的字符串


遇到的问题

从vs2015起gets()函数就没有了,所以在vs2019时,使用gets()会出现报错,报错提示:未定义表示符“gets”;

解决方法

使用gets_s();

缺点

当数组大小为10时,只能输入9个字符(有一个位置留给'\0'),否则会造成缓冲区溢出, 甚至程序崩溃。

使用fgets();


输入时如果超出预先分配内存大小就自动截断, 不会出错。

getsline(,);

string str和前者char str[]比较起来,不必 担心内存是否足够、字符串长度等等,而且作为一个类出现,他集成的操作函数足以完成我们大多数情况下(甚至是100%)的需要。我们可以用 = 进行赋值操作,== 进行比较,+ 做串联(是不是很简单?)。我们尽可以把它看成是C++的基本数据类型。

要加一个头文件 #include < string >才可以使用


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM