UINT16_uint16是什么数据类型

UINT16_uint16是什么数据类型记得之前在刷笔试题的时候就看见过这个问题,发现当时上网百度后又忘了。最近在看CryEngine3引擎代码的时候又晕了,趁现在赶紧记下来~在查看CE3的代码时我发现了这个变量,TFlowNodeIdm_flowNodeId;心想这是什么鬼?(请理解一个菜鸟没啥经验)然后果断在VS下按F12查看定义,连着按了几次我终于捋清其中的奥妙。所以我干脆把uint8,uint32

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

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

记得之前在刷笔试题的时候就看见过这个问题,发现当时上网百度后又忘了。

最近在看CryEngine3引擎代码的时候又晕了,趁现在赶紧记下来~

 

在查看CE3的代码时我发现了这个变量,TFlowNodeId m_flowNodeId;

心想这是什么鬼?(请理解一个菜鸟没啥经验)

然后果断在VS下按F12查看定义,连着按了几次我终于捋清其中的奥妙。

所以我干脆把uint8,uint32的都找出来了~

typedef  unsigned  char  uchar;

typedef  uchar  uint8;

typedef   uint8  TFlowPortId;





typedef  unsigned  short  ushort;

typePOINTdef  ushort  uint16;

typedef  uint16  TFlowNodeId;



typedef  unsigned  int   uint;

typedef  uint  uint32;

 

 

下面我就要针对其意义简单的做一下分析了~

一般来说我们都知道typedef

用来给变量或结构体起别名,之后声明变量的时候看起来比较清晰易懂

例如 typedef char* PCHAR

或者   typedef struct tagPOINT
       {
             int x;
             int y;
       }POINT;

PCHAR c;

POINT P1;

在这里我们用typedef来定义与平台无关的类型

 int的size取决于平台,16位平台的sizeof(int)=2, 32位平台的sizeof(int)=4, 64位平台的sizeof(int)=8。

(当然这个是不一定得,可能和平台以及编译器有关,多数情况是上面说的那样)

 

*比如我们想定义一个int16,想让他无论什么平台上都是占16位,即两个字节。

  那我们就只需要修改    typedef short int16;

  因为在16位和32位机器上(对于一般的编译器来说)short都是占16位,

  这样我们就可以声明  int16  a;就达到我们的效果了~

 

 

顺便贴一下:

 

32位系统,vc编译器中,

short占 2 字节,

int 、float、long 都占 4 字节,

double 占8 字节

具体占用几个字节,用sizeof();可以测出来的

 

上面代码还涉及到unsigned,无符号数,这个在之后的博客里再详细讨论一下吧~

上面有任何不对的地方还请指出,随时更正~

 

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

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

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


相关推荐

  • Linux基础_vim命令

     使用过LINUX操作系统的人应该都知道vim命令可以编写文本,对于没有接触过的同学通过以下介绍就可以轻松学会vim命令的使用方法。1.vim的工作模式 vim有三种工作模式,分别为命令模式,插入模式和退出模式。命令模式下不能编辑文本,通过i进入插入模式进行编辑,编辑完成后通过Esc键进入命令模式,在命令模式下输入:wq进行保存退出,其中w表示保存,q表示退出。2.vim常用工作参…

    2022年4月10日
    40
  • stm32中u8,u16,u32的理解_常用stm32是什么型号

    stm32中u8,u16,u32的理解_常用stm32是什么型号http://www.51hei.com/bbs/dpj-27167-1.html在KeilMDK开发环境里,比如一个无符号32位整形数据会有很多种表示方法:1.unsignedint32(C语言标准表达方法)    2.uint32_t;      3.u32;  这三种方式都是在表达同一个意思。可为什么ST的开发人员要搞的这么乱呢? 其实ST搞这

    2022年8月31日
    1
  • Linux禁用防火墙规则的命令_linux 防火墙开启端口

    Linux禁用防火墙规则的命令_linux 防火墙开启端口linux防火墙有时候觉得太烦人了,想禁用下,该怎么办呢?下面由学习啦小编给你做出详细的linux防火墙禁用方法介绍!希望对你有帮助!linux防火墙禁用方法一:Linux中现主要有两套管理服务的软件。大多数的发行版使用SysVinit的系统启动进程管理体系,即service和chkconfig命令来配置和控制服务,例如CentOS6有些发行版则默认使用比较新的也是争议很大的systemd体系…

    2022年9月2日
    3
  • C++虚析构函数和纯虚析构函数

    C++虚析构函数和纯虚析构函数1、为什么要使用虚析构函数我们知道析构函数是在对象生命周期结束时自动被调用,用来做一些清理工作(如释放句柄,释放堆内存等),防止出现内存泄漏。那怎么还有虚析构函数呢?使用虚析构函数的类一般是要作为基类,被其他类继承。通过把基类的析构函数声明为虚函数,就可以通过父类指针来释放子类对象,从而完成子类的一些清理工作,防止出现内存泄漏。案例1:基类析构函数为非虚函数//test.hclassParent{public:Parent();~Parent

    2022年6月17日
    23
  • Navicat15在线激活码【在线注册码/序列号/破解码】

    Navicat15在线激活码【在线注册码/序列号/破解码】,https://javaforall.net/100143.html。详细ieda激活码不妨到全栈程序员必看教程网一起来了解一下吧!

    2022年3月18日
    60
  • 安卓耳机接口(我读懂了你作文800字)

    一文读懂Android/iOS手机如何通过音频接口与外设通信0背景1音频口通信特点1.1通用性强1.2速率低1.3小信号2手机音频口通信原理2.1音频接口2.2音频通信模型与信号组成2.2.1通信模型2.2.2音频通信使用的信号3手机音频口全双工通信方案3.1设备→手机3.2手机→设备4案例分析(以2FSK

    2022年4月15日
    51

发表回复

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

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