getline() in C++
getline() in C++
为什么getline函数在这里不接受输入?
#include <iostream>
#include <string>
using namespace std;
int main() {
unsigned n {}, m {};
cin >> n >> m;
string set;
getline(cin, set);
cout<<set<<endl;
return 0;
}
提供的输入:
1 5
Hello World
显示输出:
std::getline(istream&,std::string&)
的工作方式与cin>>var
的工作方式不同。 当您使用cin>>var
正确的输入被正确吸收到 var 中时,如果之前有一个空格,则会忽略它,但std::getline
不会忽略该空格,因此我们使用std::cin.ignore()
忽略n
。如果你不忽略它,字符串将包围它,然后不会吸收你的行,因为std::getline()
遇到n
时停止。
#include <iostream>
#include <string>
using namespace std;
int main() {
unsigned n {}, m {};
cin >> n >> m;
string set;
cin.ignore();
getline(cin, set);
cout<<set<<endl;
return 0;
}
相关文章:
- netcat command in c++
- Difference in displaying cv2 Mat
- C++ MFC Libraries in Travis CI
- 如何在OpenSSL中从configuration.h.in获取configuration.h
- 创建具有 new in 函数和"this is nullptr"异常的对象
- IN, OUT, INOUT Parameters
- 应用程序崩溃并显示"symbol _ZdlPvm, version Qt_5 not defined in file libQt5Core.so.5 with link time reference"
- 有人安装"IITB Simplecpp in mac"吗?
- 从 C 样式字符串中删除子字符串 "in place" 在C++代码中
- 如何修复"error: ‘_1’ was not declared in this scope"?
- Softmax Implementation in C++
- 将 out/in out 参数与 if/switch 的 init 语句一起使用
- IF-nesting in c++
- Gurobi GRBModel and GRBmodel in C++
- Tensorflow Hub in C++
- Centos7 g++ "to_string is not in a member of std"
- InitializeCriticalSectionEx Not Located In KERNEL32.Dll
- 将 lambda 表达式传递给 std::function in C++
- @CPPFLAGS@在 Makefile.in 中意味着什么?
- std::async from std::async in windows xp