gcc编译器的功能强大,支持的语法也非常灵活,给我们在编程时带来了非常大的方便,也给移植代码时带来了一定的难度。
1 声明64位数据类型:
gcc: long long
vc: __int64
2 switch语法中的case语句:
gcc: case '0' ... '9'
vc: case 0:
gcc: case '0' ... '9'
vc: case 0:
case1:
...
3 寄存器变量的作用范围:
gcc: 可以把register变量声明为全局或局部的
vc: 只能是局部变量
gcc: 可以把register变量声明为全局或局部的
vc: 只能是局部变量
4 有符号和无符号整形:
gcc: 在常量数字后面加LL或ULL,例如:
无符号:0xffffffffffffffffULL
有符号:0xffffffffffffffffLL
vc: 在常量数字前加强制转换。例如:
无符号:(uint64_t)0xffffffffffffffff
gcc: 在常量数字后面加LL或ULL,例如:
无符号:0xffffffffffffffffULL
有符号:0xffffffffffffffffLL
vc: 在常量数字前加强制转换。例如:
无符号:(uint64_t)0xffffffffffffffff
5 宏变参
gcc: #define AAA(x...)
vc: 不支持,在实际中碰到此类问题时只能根据代码分析实际情况将它分解成若干个宏
gcc: #define AAA(x...)
vc: 不支持,在实际中碰到此类问题时只能根据代码分析实际情况将它分解成若干个宏
6 对数组中指定元素的初始化:
gcc: stati
gcc: stati