C++ 如何在使用getch后将一个字符串连接到另一个字符串的末尾
对于此代码:C++ 如何在使用getch后将一个字符串连接到另一个字符串的末尾,c++,string,getch,conio,C++,String,Getch,Conio,对于此代码: #include <iostream> #include <string> #include <conio.h> int main() { std::string a; char c{}; while (c != '\r') { c = getch(); a += c; } a += "xyz"; std::cout << a; } 输入:12
#include <iostream>
#include <string>
#include <conio.h>
int main()
{
std::string a;
char c{};
while (c != '\r')
{
c = getch();
a += c;
}
a += "xyz";
std::cout << a;
}
输入:12345,然后输入键
输出:xyz45
我该如何阻止这种情况发生
所需输出:12345xyz
您需要避免向字符串中添加\r字符,例如:
while ((c = getch()) != '\r')
a += c;
您需要避免向字符串中添加\r字符,例如:
while ((c = getch()) != '\r')
a += c;
想想c=getch返回'\r'字符后会发生什么。想想c=getch返回'\r'字符后会发生什么。