cs50 替换 int x = plaintext[i] - 'a';

cs50 substitution int x = plaintext[i] - 'a';

我试图在两个循环中从 cs50 pset2 进行替换,但我遇到了一些问题。

我在这里找到了一个循环解决方案:

但是现在我不太明白这部分:

int x = plaintext[i] - 'a';

如果plaintext[i]'m''m'是ASCII的109,'a'是97,所以m-a == 12,ASCII换页。或者它不是正在进行的 ASCII 减法?

看下一行:

printf("%c", tolower(key[x]));

x 用作键数组的索引。