#include <iostream> #include <cstring> using namespace std; void cHash(const char* in, char* out) { const char allowed_chars[] = "AaBbCcDdEeFfGgHhIiJjKkLlMmNnOoPpQqRrSsTtUuVvWwXxYyZz"; const int allowed_len = strlen(allowed_chars); const int inlen = strlen(in); char last = 254; for (int i=0; i<inlen; i++) { char c = in[i]; out[i] = allowed_chars[(c+last) % allowed_len]; last = c; } } int main() { char buffer[] = "Hello world!"; char* next = (char*) malloc(strlen(buffer)*sizeof(char)); cHash(buffer, next); cout << next << endl; free(next); return 0; }