我对 gcc 编译器预定义的变量 __SIZE_TYPE__
很好奇。
假设我用 C 编写如下句子
typedef __SIZE_TYPE__ size_t;
使用gcc以外的其他C编译器会不会出错?
所有的 C 编译器都有变量 __SIZE_TYPE__
吗?
最佳答案
是的,只要你使用任何带有双下划线的标识符,就可能会出错。参见 C 标准 7.1.3:
All identifiers that begin with an underscore and either an uppercase letter or another underscore are always reserved for any use.
至于 __SIZE_TYPE__
这显然是一个 gcc 标识符。我不认为任何其他编译器使用它,但不能保证。另一个编译器可以完全自由地使用相同的标识符即使是为了完全不同的目的。
关于c - gcc 编译器 __SIZE_TYPE__,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36857141/