我正在通读《C for Dummies》,但在解读某些内容时遇到了困难。
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#define FALSE 0
#define TRUE !FALSE
#define OMEGA ('Z' - 'A')
int main() {
int done;
long int r;
char alpha;
srandom((unsigned)time(NULL));
done = FALSE;
while(!done) {
r = random() % OMEGA; // basically, OMEGA = 25
alpha = 'A' + (char)r;
if (alpha =='Q') done = TRUE;
putchar(alpha);
}
return 0;
}
Run Code Online (Sandbox Code Playgroud)
我知道 #define OMEGA ('Z' - 'A') 将常数限制为 0 - 25。如果这是错误的,请纠正我。我遇到的问题是 alpha = 'A' + (char)r; 为什么“A”不是 65(就 ASCII …
c ×1