K&R c 第 2 版(第 2.3 节)提到
常量表达式是只包含常量的表达式。这样的表达式可以在编译期间而不是运行时进行评估,因此可以在任何可能出现常量的地方使用
但是,我对此有几个疑问:
这个表达式会被视为常量表达式吗?
const int x=5; const int y=6; int z=x+y;
即使用
const
关键字是否被认为是常量表达式?是否有任何技术可以检查表达式是在编译期间还是在运行时评估的?
是否存在编译时评估产生与运行时评估不同的结果的情况?
我什至应该关心它吗?(也许我用它来优化我的程序)