uint32 t java_数据类型 — uint32_t 类型「建议收藏」

uint32 t java_数据类型 — uint32_t 类型「建议收藏」1>.在写程序时注意”无符号类型”的使用,各种类型边界值的情况.如:a>当某个数据不可能为负数时我们一定要考虑用以下类型:unsignedchar,unsignedint,uint32_t,size_t,uint64_t,unsignedlongint,b>当有些数据你不知道是正负时一定不要用”a>”中的类型,不然他永远也不可能为负.c>…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

1>. 在写程序时注意”无符号类型”的使用, 各种类型边界值的情况.

如:

a> 当某个数据不可能为负数时我们一定要考虑用以下类型:

unsigned char, unsigned int, uint32_t, size_t, uint64_t, unsigned long int,

b> 当有些数据你不知道是正负时一定不要用”a>”中的类型, 不然他永远也不可能为负.

c> 数据的边界值要多注意, 如:

uint32_t    a, b, c;

uint64_t    m;

m = a * b + c;

在该运算中可能出现错误, “a*b”的类型可能超过uint32_t的最大值,这时一定不要忘了类型转换.

m = ((uint64_t)a) * b + c;

2>. 在适当的时候要会自我定义数据类型.

我们都知道linux C开发中的常见扩展数据类型的定义有:uint8_t, uint16_t, uint32_t, uint64_t, size_t, ssize_t, off_t …. 他之所以要自己定义出数据类型是有道理的, 如: typdef unsigned int uint32_t; 表示uint32_t为32位无符号类型数据, 其实size_t也是32位无符号数据类型,为什么不直接写”unsigned int”呢?

为了程序的可扩展性, 假如将来我们需要的数据大小变成了64bit时,我们只需要将typedef long long size_t就可以了, 不然我们可要修改好多好多的地方了.这种设计我们同样可以应用到自己的开发中来,当自己设计一个int类型保存某种数据时,但你又没把握将来是不是要用long int时你可以引用一个自己定义的数据类型的啊!

stdint.h

—————————–

typedef unsigned int            uint32_t;

uint32_t.c

—————————–

#include

#if 0

#include     // uint32_t

#endif

typedef unsigned int       uint32_t;

typedef unsignedlong long uint64_t;

int main()

{

uint32_t a;

a = 12;

printf(“a = %x\n”, a);

printf(“sizeof(a) = %d\n”, sizeof(a));

uint64_t b;

b = 12;

printf(“b = %x\n”, b);

printf(“sizeof(b) = %d\n”, sizeof(b));

}

a = c

sizeof(a) = 4

b = c

sizeof(b) = 8

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/196473.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 网口调试步骤_万兆光口和千兆光口对接

    网口调试步骤_万兆光口和千兆光口对接千兆网口、光口调试总结配置6096端:工作模式的配置方式:1、 硬件配置,通过电阻上下拉确定;6096的硬件配置不可以错,其在portstatus寄存器状态中有相应的寄存器位体现硬件配置的工作模式。2、 软件配置,主要是配置链路层的工作模式。主要是设置PCS(Physicalcodingsublayer)寄存器。3、 Marvell的PHY芯片有个特性,叫P

    2022年9月13日
    0
  • SqlTransaction事务的用法

    SqlTransaction事务的用法使用SqlTransaction实现数据库操作事务 SqlTransaction类是对SQLServer数据库进行事务处理的类,该类的实例由SqlConnection类实例的BeginTransaction方法创建,表示在该数据库连接实例上开始一个数据库事务,创建SqlTransaction类实例后,在程序中使用该实例的Commit方法提交事务,或者使用该类的Rollback方法回滚事…

    2022年6月10日
    25
  • 微信小程序–单选复选按钮组的实现

    微信小程序–单选复选按钮组的实现本文主要介绍微信小程序单选按钮很多选按钮的实现方式。众所周知,小程序目前无法绑定DOM截点,实现的原理就是通过bindtap点击的事件方法获取data-id进行循环遍历取反而实现该效果。(一)单选按钮组模型图如下:index.jsPage({data:{parameter:[{id:1,name:’银色’},{id:2,name:’白色’},{i

    2022年5月7日
    211
  • MySQL字段存储的内容是不区分大小写的,你知道吗?

    做一个积极的人编码、改bug、提升自己我有一个乐园,面向编程,春暖花开!分享一下大神老师的人工智能教程。零基础!通俗易懂!风趣幽默(偶尔开开车,讲讲黄段子)!大家可以看看是否对自己有帮助,如果你对人工智能感兴趣,希望你也加入到我们人工智能的队伍中来,点击这里查看【人工智能教程】。接下来进入正文。文章目录00 简单回顾01 一个例子02 解决方案03 总结04 参考资料00 简单回…

    2022年2月28日
    38
  • Linux开发环境搭建与使用——ubuntu更新设置

    Linux开发环境搭建与使用——ubuntu更新设置

    2022年2月4日
    76
  • python实现压缩,解压文件,使用密码解压文件。

    python实现压缩,解压文件,使用密码解压文件。

    2021年9月18日
    58

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号