程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> C++ >> 關於C++ >> 深刻解析C說話中常數的數據類型

深刻解析C說話中常數的數據類型

編輯:關於C++

深刻解析C說話中常數的數據類型。本站提示廣大學習愛好者:(深刻解析C說話中常數的數據類型)文章只能為提供參考,不一定能成為您想要的結果。以下是深刻解析C說話中常數的數據類型正文


空話不多說,上代碼

//編譯情況:codeblocks+gcc
#include <stdio.h>
#include <stdint.h>
int Fun()
{
    uint64_t y;
    uint32_t x1, x2;

    //y = 3000 * 24000000 / 1000;//常數默許作為32位數據,暫時運算成果也是32位,溢失足誤
    //y = (uint64_t)3000 * (uint64_t)24000000 / 1000;//常數強迫轉換為64位,運算准確
    y = 3000ULL * 24000000ULL / 1000ULL;//常數應用64位格局,運算准確

    printf("0x%llX\n", y);//輸入
    x1 = (uint32_t)(y & 0xFFFFFFFF);
    x2 = (uint32_t)(y >> 32);
    printf("0x%X,0x%X \n", x1, x2);//輸入成果
}
int main()
{
    Fun();
}

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved