深入解析C语言中常数的数据类型

时间:2021-09-03 11:02:18 

废话不多说,上代码


//编译环境: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();
}

标签:C语言,常数,数据类型
0
投稿

猜你喜欢

  • JAVA反射机制实例教程

    2023-11-25 23:33:47
  • java String校招面试题过程详解

    2021-12-01 11:11:21
  • 非常好看的android音量旋钮

    2021-09-08 00:35:53
  • MapTask工作机制图文详解

    2021-12-13 11:03:27
  • Java多线程工具CompletableFuture的使用教程

    2023-07-30 20:31:45
  • Java中的stream流的概念解析及实际运用总结

    2022-06-10 23:19:10
  • SpringBoot配置和切换Tomcat流程详解

    2022-07-13 02:35:51
  • 关于Tomcat出现The origin server did not find a current representation for the target resourc...的问题

    2023-03-03 18:02:43
  • 一些比较实用的 Android adb 命令分享

    2023-12-22 12:39:41
  • Java Filter 过滤器详细介绍及实例代码

    2023-11-26 01:04:39
  • JAVA随机打乱数组顺序的方法

    2023-08-11 18:56:03
  • 剖析Java中线程编程的概念

    2022-02-02 04:12:51
  • Android ViewPager实现图片轮播效果

    2023-03-20 17:00:58
  • Java操作Redis详细介绍

    2023-07-27 06:53:04
  • Spring中实现定时调度的几种方法

    2021-08-29 13:04:44
  • springboot集成springsecurity 使用OAUTH2做权限管理的教程

    2023-12-22 22:57:21
  • Android自定义view实现电影票在线选座功能

    2022-04-26 22:26:59
  • Java的Struts框架简介与环境配置教程

    2023-10-29 05:23:03
  • C# 多线程更新界面的错误的解决方法

    2022-01-20 15:52:21
  • 在RecyclerView中实现button的跳转功能

    2023-06-17 20:21:14
  • asp之家 软件编程 m.aspxhome.com