string encryp(const string msg, int n)
{
string enMsg = msg;
for(int i = 0; msg[i]!='\0'; i++)
{
if(enMsg[i] != 32)
enMsg[i] += n;
}
return enMsg;
}
int main(int argc, char **argv)
{
if(argc > 2) return 1;
int n = atoi(argv[1]);
printf("Print the string to be encrypted: ");
string msg = GetString();
string enMsg = encryp(msg, n);
printf("%s\n", enMsg);
}
我正在做凯撒的密码练习;我正在加密的角色变成了胡言乱语。 我怀疑这是因为超出范围的问题,因为当enMsg [i] - = n时,代码加密完美。我怎么能应付这个?