当前位置:  编程技术>java/j2ee

java和c/c++ 数据类型长度的比较

    来源: 互联网  发布时间:2014-11-01

    本文导语:  1. c语言中的整数类型有char, short, int, long等几种, 下面是C语言对每种数据类型长度的规定: (a). short和long类型的长度不相同 (b). int类型通常同具体机器的物理字长相同 (c). short通常是16bits, int通常是16bits or 32bits每种编译器可以根...

1. c语言中的整数类型有char, short, int, long等几种, 下面是C语言对每种数据类型长度的规定:
(a). short和long类型的长度不相同
(b). int类型通常同具体机器的物理字长相同
(c). short通常是16bits, int通常是16bits or 32bits每种编译器可以根据硬件的不同自由确定, 但是short和int必须最少是16bits, 而long类型必须最少是32bits, 并且short必须比int和long类型要短。

2. sizeof() 运算符返回的是一种数据类型中所包含的字节数(bytes), AnsiC规定sizeof(char)必须返回1,当sizeof作用于数组时, 返回的是数组中所有成员所占的字节数(注意并不是数组中成员的个数), 当sizeof()作用于结构体和公用体时,返回的不仅仅是数据成员总的字节数, 还包括编译器为了实现字节对其而填充的那些字节。

以前写程序也隐隐约约的懂得这些规则,但是一直以为char类型必须是8bits的,但是最近做了一个嵌入式DSP项目,编译器手册上明明写着char类型就是16bits的,无奈翻出"The C Programming Language"一查才发现ANSI C对于char类型的长度并没有作硬性规定。以前写程序不太注意数据类型的可移植性, 这次项目中用到的以前的代码都要重新检查数据类型长度的问题。

C++数据类型长度问题:

一、字节和字长
字节,八位就是一个字节,是固定概念。字长是指计算机一次能处理的二进制数据的长度,是一个非固定的概念。例如,8位计算机的字长为8,即一个字节, 32位计算机的字长位32,即4个字节,同理,64位计算机的字长为64,即8字节。

二、C++中的数据类型
1、字符型数据char,该类型始终是一个字节长,即8位。
2、整形int、短整型short和长整形long。通常int为一个字长,short为半个字长,long为一个或2个字长(在32位机器中为一个字长)。

3、浮点型float、双精度double、和长双精度long double,分别表示单精度浮点数 双精度浮点数和扩展精度的浮点数值。典型情况下,float 为一个字,double是两个字,long double为三个或四个字。

Java中各数据类型的长度:

boolean 这个试编译环境而定
byte  1个字节
short 2个字节
char  2个字节
int   4个字节
long  8个字节
float 4个字节
double 8个字节


    
 
 

您可能感兴趣的文章:

  • java中如何得到byte数组中实际数值的长度??
  • 怎样取得java中数组的长度
  • 请问在Java中String变量的最大长度是多少?
  • java.sql.SQLException: 类型长度大于最大值 是什么意思?在线给分
  • 如何知道java数组的长度
  • java中计算字符串长度的方法及u4E00与u9FBB的认识
  • 用Java Applet 进行Web编程时,如何限制输入域中可输入字符的长度!解决后马上给分!!!
  • java命名空间javax.xml.ws注释类型webserviceref成员方法: type定义参考
  • java 基本类型或可序列化类型,这里说的可序列化类型是什么意思???具体都有哪些类型??谢谢
  • java命名空间javax.annotation注释类型resource的类成员方法: authenticationtype定义及介绍
  • 如何将java.util.Date类型的日期转换成java.sql.Date类型的日期?
  • java命名空间javax.annotation注释类型resource的类成员方法: type定义及介绍
  • 请问SQL中的datetime类型于java中什么类型对应?
  • java命名空间javax.xml.ws注释类型webserviceref成员方法: value定义参考
  • java中的字符类型如何转换成String类型
  • java命名空间javax.annotation注释类型resource的类成员方法: shareable定义及介绍
  • 请教JAVA小问题:如何将含数字的String类型的对象转化为int或long类型
  • java命名空间javax.jws注释类型webparam的类成员方法: mode定义及介绍
  • ado的rs.field("字段名")可以访问任何类型的数据,那吗java里面这种问题如何处理。是不是要先判断类型然后再根据类型来使用相应的getint or getString阿!谢谢了!在线等待!
  • java命名空间javax.xml.ws注释类型webserviceref成员方法: wsdllocation定义参考
  • 深入理解:Java是类型安全的语言,而C++是非类型安全的语言
  • java命名空间javax.xml.bind.annotation注释类型xmlelementref的类成员方法: type定义及介绍
  • 如何将java.util.Date转化为java.sql.Date?数据库中Date类型对应于java的哪个Date呢
  • java命名空间javax.xml.bind.annotation注释类型xmlenum的类成员方法: value定义及介绍
  • java的数据类型问题
  • java命名空间javax.xml.ws注释类型responsewrapper成员方法: targetnamespace定义参考
  • java协变返回类型使用示例
  • java命名空间javax.xml.ws注释类型responsewrapper成员方法: classname定义参考
  • java里基本数据类型是什么?对象么?
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 用java读一个比较大的文本文件(几百k~几M)怎么才能比较快?
  • 初学JAVA,请问各位哪本数据结构(JAVA版)比较好?
  • 初学java,请各位给我推荐比较好的java书
  • 本人想学java,请问java程序员的待遇如何,和java主要有几个比较强的方向
  • 我是一名JAVA初学者,请问哪里有比较好的JAVA的源程序下载
  • 我现在刚刚学到JAVA的线程和socket,请问《JAVA 2宝典》和《JAVA核心技术卷2:高级特性》哪本书讲得比较好?
  • java初学看什么例子比较好。
  • 请问学习java比较好的中文书籍有哪些,谢谢!
  • 假设现在对且仅对java基础比较熟悉(通过scjp),要做一个java proxy的软件,步聚是什么?
  • 关于java比较好的书
  • 用java编写网络程序,那本书比较好?
  • HTML教程 iis7站长之家
  • 现在哪种java的开发环境比较受欢迎(vj++??jbuilder??),请推荐几本学习java的好书?
  • JAVA可以真正实现实数的相等比较吗?
  • 我对java比较感兴趣??学习。。
  • 各位高手:北京的java培训哪个单位比较好,就是组织你考scjp之类的,或者发java的证书?
  • 求教一个比较初级的java编译问题
  • 在Linux下用什么平台开发java程序比较好?
  • Java源文件比较工具 DiffJ
  • JAVA开发什么方面比较有前途??
  • java命名空间java.sql类types的类成员方法: java_object定义及介绍
  • 我想学JAVA ,是买THINK IN JAVA 还是JAVA2核心技术:卷1 好???
  • java命名空间java.awt.datatransfer类dataflavor的类成员方法: imageflavor定义及介绍
  • 请问Java高手,Java的优势在那里??,Java主要适合于开发哪类应用程序
  • java命名空间java.lang.management类managementfactory的类成员方法: getcompilationmxbean定义及介绍
  • 谁有电子版的《Java编程思想第二版(Thinking in java second)》和《Java2编程详解(special edition java2)》?得到给分
  • java命名空间java.lang.management接口runtimemxbean的类成员方法: getlibrarypath定义及介绍
  • 我对JAVA一窍不通,可惜别人却给我一个Java的project,要我做一个安装程序,请问哪里有JAVA INSTALLER下载,而且我要不要安装java的sdk才能完成此项任务?
  • java命名空间java.lang.management接口runtimemxbean的类成员方法: getstarttime定义及介绍
  • 新年第一天,让我们讨论一下未来一年JAVA的发展趋势! 个人认为,JAVA将主要朝ERP和JAVA手机方面发展!
  • java命名空间java.awt.datatransfer类dataflavor的类成员方法: stringflavor定义及介绍


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3