这是代码:
#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
在数组中读取字符串的方法是什么?
答案 0 :(得分:5)
getline
是cin
的成员(属于std
命名空间)。你需要说:
std::cin.getline(...)
虽然我个人推荐this:
#include <string>
#include <iostream>
int main()
{
std::string str1;
std::string str2;
std::getline(std::cin, str1);
std::getline(std::cin, str2);
return 0;
}
答案 1 :(得分:-3)
请使用gets()或(对于Microsoft编译器gets_s()(使用缓冲区长度检查))
#include <iostream>
#include <string>
int main()
{
char str1[100];
char str2[100];
gets(str1);
gets(str2);
return 0;
}