首页 > 解决方案 > 如何在 C++ 中使用字符串重复?

问题描述

我最近遇到了这段代码。有人可以解释一下吗。

string generateTheString(int n) {
    return "b" + string(n - 1, 'a' + n % 2);
}

这里是什么string(n - 1, 'a' + n % 2)意思?

标签: c++stringc++11repeat

解决方案


string(n - 1, 'a' + n % 2);

正在调用字符串构造函数(特别是#2)。

您的字符串将使用 character 的实例进行n - 1实例化'a' + n % 2

然后将其与"b".

例如,如果n是 5,你会得到n - 1 => 4of'a' + 5 % 2 => 'a' + 1 => 'b'然后在前面加上另一个b. 所以你会结束"bbbbb"


推荐阅读