Hallo Ich bin stecken, während Sie versuchen, Zeichenfolge mit Zeiger zu verschlüsseln und zu entschlüsseln. Ich muss das Alphabet um +1 verschieben. Beispiel: Hallo wird Ifmmp sein. Und ich muss auch andere Zeichen wie $% ^^ entfernen. Wenn also die Zeichenfolge 'z' ist, würde mir +1 geben. Hier ist mein Code.Chiffre und entziffern String durch Verschieben +1 mit Zeiger
char *cipher(char *s) {
int i =0;
int shift = 1;
while(*(s+i)!= '\0') {
if (*(s+i)) {
*(s+i)+= (shift);
}
i++;
}
}
char *decipher(char *s) {
int i =0;
int shift = -1;
while(*(s+i)!= '\0') {
if (*(s+i) +shift) {
*(s+i)+= (shift);
}
i++;
}
}
meine aktuelle Ausgabe lautet: chiffrieren: abcxyz -> bcdyz { zu entziffern: bcdyz {-> abcxyz
Dank
ich ziemlich sicher bin, dass 'if (* (n + i) + Shift> = 65 && (* (s + i) + = shift <= 90))' nicht tut, was du willst. Beachte das '* (s + i) + = ...'. – mch
Danke, löste das Problem. hast du eine Idee, wie ich andere Charaktere wie! @ # $ eliminieren kann? @mch – skylight
Werfen Sie einen Blick auf http://man7.org/linux/man-pages/man3/isalpha.3.html – mch