Adi*_*369 12 c c++ compilation
你能想到"一个程序",它为C和C++编译器提供了"不同的输出"(但是在同一种语言下提供了一致的输出)吗?
Ada*_*eld 20
一个常见的例子是sizeof('A'),通常是在4 C,但总是在C++ 1,因为像字符常量'A'具有类型int在C,但该类型char在C++:
#include <stdio.h>
int main(void)
{
printf("%d\n", sizeof('A'));
}
Run Code Online (Sandbox Code Playgroud)
caf*_*caf 19
该程序12使用C++或C99以及6C89生成:
#include <stdio.h>
int main()
{
int a = 12//**/2;
;
printf("%d\n", a);
return 0;
}
Run Code Online (Sandbox Code Playgroud)
int main() { return sizeof 'a'; }
Run Code Online (Sandbox Code Playgroud)
typedef char X;
int main() {
struct X { double foo; }
printf("%d\n", sizeof(X));
return 0;
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1376 次 |
| 最近记录: |