如何编写ConvertString函数

时间:2015-10-15 21:44:28

标签: c++

我正在学习C ++,我应该编写一个函数(ConvertString)来修改输入字符串input_string 用字符替换每个字母字符,这是mod_int在字母表中的位置。例如,如果

input_string:Hello
mod_int:4
mod_string:Lipps // L = H + 4,i = e + 4等

有人可以帮帮我吗? 谢谢!

int x;
x = input_string.length();
for (int i=0; i<input_string.length(); i++)
    if (isalpha(input_string[x]))
    {
        int start = 65;
        if (islower(input_string[x]))
            int start = 97;
        return ConvertString(input_string, mod_int =
                (((int)input_string[x] - start + mod_int) % 26) + start);
    } else cout << input_string[x];

1 个答案:

答案 0 :(得分:0)

您可以将输入存储在std::string中。然后,考虑使用std::transform来使用您的函数进行转换。我将给你一个toupper()函数的例子,你应该用你需要写的函数替换它(并将指针传递给那个函数而不是toupper()):

#include <algorithm>
#include <string> 

std::string input_string = "Hello"; 
std::transform(input_string.begin(), input_string.end(), data.begin(), ::toupper);

编辑:您的函数应具有以下签名:int convert_char(char c);