在C ++中将符号插入* char类型的数组中

时间:2015-09-06 19:32:45

标签: c++ arrays string

根据我的任务,我需要创建一个类的方法,它允许我在字符串的每五个符号后面的字符串中插入符号“+”(在我的情况下在* char数组中)。

class String
{
private:
    char* st;
public:
    int length;
    int get_length(); //method for finding length of the string
    char* insert_plus();
};

char* String:: insert_plus()
{
    int i = 0,
    k = 0;
    int length_origin = get_length();

    while (get_length() < length_origin + k )
    {
        if (i % 5)
        {
            st.insert(i, '+');
            k++;
        }
    }
    return st;
}

我遇到了错误

st.insert(i, '+');

我知道st不是一个类,但我在MSDN上读到这是插入符号的正确方法。所以请帮我解决如何做到这一点。 请不要对我很难,我只是在学习。

1 个答案:

答案 0 :(得分:0)

st声明为string类出现:

string st;

现在您可以使用字符串类成员函数,例如string::insert() 然后使用string::c_str()获取返回语句的st的char *值。

return st.c_str();

我没有&#34;说话&#34; c ++很长一段时间,请查看c_str最终参数的在线文档。

注意:如果尚未包含,请不要忘记包含字符串类头文件:

#include <string>