0

这是代码:

#include <iostream>
#include <string>
#include <cstdlib>
#include <sstream>

int main()
{
      char str1[100];
      char str2[100];
      getline(str1,100,'\n');
      getline(str2,100,'\n');
      return 0;
}

我想读取字符串并将其存储在数组中,因此我正在使用此方法,但它在编译时显示以下错误

   [Error]138: error: `getline' was not declared in this scope

在数组中读取字符串的方法是什么?

4

2 回答 2

5

getlinecin(属于std命名空间)的成员。你需要说:

std::cin.getline(...)

测试

虽然我个人会推荐这个

#include <string>
#include <iostream>

int main()
{
    std::string str1;
    std::string str2;
    std::getline(std::cin, str1);
    std::getline(std::cin, str2);
    return 0;
}
于 2013-07-05T12:56:55.237 回答
-3

请使用 gets() 或(对于 Microsoft 编译器 gets_s()(带有缓冲区长度检查))

#include <iostream>
#include <string>

int main()
{
  char str1[100];
  char str2[100];

  gets(str1);
  gets(str2);

  return 0;
}
于 2013-07-05T13:24:31.567 回答