c 语言编译器 (32bit测试)对整数类型long long截断

来源:互联网 发布:浙江省网络监管服务网 编辑:程序博客网 时间:2024/06/10 05:05
#include  <stdio.h>int main (){    long long  a = 0x123456789a;    printf("%llx\n",a);    printf("%d %d %d\n", sizeof(long), sizeof(int), sizeof(long long));    return 0;}




tcc编译器内部代码

if (overflow || i[1] != 0)
{
Warning(&TokenCoord, "Integer literal is too big");
}

TokenValue.i[1] = 0; //只取低四字节,高字节为0(整数截短)
TokenValue.i[0] = i[0];
tok = TK_INTCONST;



0 0
原创粉丝点击