据我所知#define
只是一个字符串替换,它不是一个变量,所以它没有任何内存地址或其他东西。
假设这段代码:
#include <stdio.h>
#define ONE "a"
main() {
printf("the number is: %d\n", ONE);
}
然后当我编译并运行这个程序时,我每次都会得到一个随机字符串:
号码是:8179551
号码是:21127007
号码是:57114463
...
如果#define
没有任何内存地址,那么这个值是什么,为什么每次都改变?