gpt4 book ai didi

C++使字符数组在输入时识别空格

转载 作者:搜寻专家 更新时间:2023-10-31 01:43:24 24 4
gpt4 key购买 nike

我正在尝试制作一个程序来翻转您输入的单词。当我尝试写这个词时,问题就来了,它要求输入两次:

cin >> Arr >> myStr;

它问两次是合乎逻辑的,但每次我尝试使用 getline 时,编译器都会给出一个错误(即使它有效,我也必须输入两次),我需要它在字符数组中包含空格。

这是我的完整代码:

#include <iostream>
#include <string>

using namespace std;

string myStr;
string newVal;
int i;

int main()
{
char Arr[i];
cout << "Enter: ";
cin >> Arr >> myStr;

for (i = myStr.length(); i >= 0; i--)
{
cout << Arr[i];
}

cout << endl;

return 0;
}

循环有效。

第一个问题可以通过正确使用 getline 来解决。

第二个,我不知道(使用单个输入来分配两个变量)。

提前致谢,如果这个问题太荒谬了,我深表歉意。

最佳答案

也许你可以尝试看看这个解决方案,它比你的更像 C++ 风格:

 #include <iostream>
#include <string>

int main() {
std::string myStr;

std::cout << "Please give me a string: ";

if(std::getline(std::cin, myStr)) {
for(std::string::reverse_iterator it = myStr.rbegin();
it != myStr.rend();
++it) {
std::cout << *it;
}

std::cout << std::endl;

}


}

我建议您在 C++ 中始终使用 std::string,因为它具有您可能需要的所有方法和功能。所以不要像在 C 中那样在 char 数组上浪费时间。

关于C++使字符数组在输入时识别空格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25226115/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com