c++ - 读取字符串的长度,然后反转/反转字符串

标签 c++ dev-c++

基本上,我成功地写了这个,我成功地反转了一个字!但是当我尝试反转包含 2 个或更多单词的字符串时,我无法获得输出。任何人都知道如何解决这个问题,或者一些提示?

 #include <iostream>

 using namespace std;

 int main()
 {
      char words[100];
      int x, i;

      cout<<"Enter message : ";
      cin>>words;

      x = strlen(words);
      //This two line is used to reverse the string
      for(i=x;i>0;i--)
         cout<<words[i-1]<<endl;

     system("pause");
     return 0;
 }

最佳答案

问题不在于 char 数组与 std::string - 它在于输入法。

cin>>words 更改为 cin.getline(words, sizeof(words), '\n');

我猜这个任务是一个习惯数组的任务,所以坚持使用 char 数组 - 否则,是的,std::string 是易于使用的方法。

关于c++ - 读取字符串的长度,然后反转/反转字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13698719/

相关文章:

c# - DLL 中的 CreateWindowEx() 创建一个标题为奇数的窗口

c++ - gcc gprof/gcov/other - 如何获得函数调用/退出序列+控制流语句

C++行进立方体算法解释

c++ - SDL DevC++ 链接器问题

c++ - gets() 和 puts() 未在 dev c++ 的范围内声明

c++ - 如何在 Windows XP 下从 Dev-c++ 中获取预处理代码?

c++ - Ofstream 在 Linux 上写入空文件

c++ - 将 IBM C++ 编译器从 xlc_R 10.0 升级到 11.1 后出现的问题

c++ - 使用带有 Dev C++ 的 RapidXML 在 C++ 中解析 XML 文件

visual-c++ - Windows 10 上的模糊开发 C++