嘿伙计我正在使用C编写一个简单的密码。我已经构建了一个基本函数(我将在下面分享),它只是从用户那里获取一条消息,获取每个索引字符,并将它们向下移动3个空格ASCII表。
我的问题:我不知道如何正确加密大写字母和“z”之类的字符,它们会更改为不是字母的字符。我希望能够将它们恢复到字母表的开头。
此外我的输出无法正常工作。当我尝试加密字符串“google”时,它有时会添加“+”或“?”到输出结束。并用#符号替换空格。
谢谢!
void ENCRYPT(char str[]){
int i=0, j=0;
int indexChar;
char cipher[100];
gets(str);
while ( (indexChar = getchar()) != '\n'){
str[i++] = indexChar;
cipher[j++] = indexChar + 3;
}
printf ("Your cipher is %s\n", cipher);
}