重复字符串以填充多个空格

时间:2014-03-13 16:41:01

标签: c++ string repeat

首先,我想为糟糕的标题道歉,我不确定如何总结这一点。

我正在创建一个简单的密码程序,它使用一个重复的密钥来适应明文长度。

所以,如果钥匙是" WATER"并且明文是" PRINGLE",钥匙会像这样循环; " WATERWA"

我在做这件事时遇到了麻烦。我不确定这是不是很困难,或者我是不是只有一个巨大的脑屁但我到目前为止只是重复整个字符串X次。

有人能指出我正确的方向吗?

2 个答案:

答案 0 :(得分:0)

您可以分两步完成:

  1. N重复第一个字符串(即N = ceil(length(str2)/length(str1)))次。

  2. 获取长度等于第二个字符串的长字符串的子字符串。

  3. 代码示例:http://ideone.com/pZrFx9

答案 1 :(得分:0)

string key2; //declare the string. It'll be the same length as plaintextString
for (i = 0; i < length(plaintextString); i++ {
    key2[i] = key1[i%(length(key1))]; //you may want to assign length(key1) to a variable
}
像乔恩说的那样,你肯定会想要在这里使用模数运算符。这段代码没有语法检查,但只要你熟悉c ++语法就可以给你一个想法。