使用索引号,将该索引一个字符附加到字符数组

问题描述

我正在尝试做这样的事情。

class testClass {        
  public:              
    void testFunction(char chararray[])
    {
    char output[].append(chararray.at(1));
    char output[].append(chararray.at(7));
    char output[].append(chararray.at(3));
    cout << output;
    }


int main() {
  testClass testObject;
  testObject.testFunction("Flowers"); 
  return 0;
}
   


}

它的意思是:

  • 从索引号的字符数组中获取字母“F”、“S”和“O”
  • 将该字符附加到输出字符数组

自从我从字符串转向 *chars 和 char 数组以来,这一直令人沮丧。

不确定最简单的解决方案是什么。 是的,我想一次从该字符串中保留 1 个字符。 这只是一个有趣的项目,但它比我想象的要复杂得多


预期输出

  • FSO

解决方法

你的意思是这样:

#include <string>
#include <iostream>

class testClass {        
  public:              
    void testFunction(const std::string& charArray)
    {
    std::string output;
    output.push_back(charArray.at(0));
    output.push_back(charArray.at(6));
    output.push_back(charArray.at(2));
    std::cout << output;
    }
};

int main() {
  testClass testObject;
  testObject.testFunction("Flowers"); 
  return 0;
}
   

当然,C++ 就像任何理智的语言一样使用从零开始的索引。