字符串读取,一点事

先来看一下一段代码:

   1: char szString[255];
   2: cin >> szString;
   3: cout << “You entered: ”<< szString << endl;

这段代码在c++程序中是很常见的,但仔细想一下如果你输入的字符串长度大于255,就会出现溢出的现象,也许这个问题通常会被人忽略。

其实我们可以选择一个更好的实现方法,如下

   1: char szString[255];
   2: cin.getline(szString, 255);
   3: cout << "Your entered: " << szString << endl;

通过这样的方式,像第一个例子中可能出现的内存溢出的现象就可以避免了

posted @ 2012-05-22 20:46  grassofsky  阅读(211)  评论(0编辑  收藏  举报