【发布时间】:2013-03-17 06:46:46
【问题描述】:
我使用字符串对这个 XOR 进行了编码,但现在我需要返回一个 char*。我一直在尝试这样做几个小时,尽管我并不真正习惯使用 char。我想我在这里遗漏了一些东西。
string XOR(string s, int key){
string res = "";
for (size_t temp = 0; temp < s.size(); ++temp){
res += s[temp] ^ ((key + temp) % 255);
}
return res;
}
我怎样才能改变它以得到一个 char* 作为回报?
编辑澄清:我需要一个 char* : char* XOR(string s, int key)
【问题讨论】:
-
你为什么说“得到一个字符作为回报”? C 风格字符串?
-
请出示您希望创建的方法的建议签名。
-
您可以从返回的
string中调用c_str()以获取const char*。 -
您确实需要澄清“返回字符”的含义。如前所述,您正在询问如何返回单个字符值。我怀疑这就是您的意思,如果是,您需要告诉我们您希望如何确定
char值。 -
@PeterWood 我不认为你可以在这个函数中做到这一点,因为
res只会从堆栈中弹出。