谁跟我说说在CC++JAVA中intchar各占几个字节好么

2019-07-19 10:50:59  阅读 126 次 评论 0 条

  可选中1个或多个下面的关键词,搜索相关资料。也可直接点“搜索资料”搜索整个问题。

  C/C++中的int占4个字节,char占1个字节;Java中的int占4个字节,char却占1~6个字节,要根据使用的编码和具体字符而定。

  Java中,内码(运行内存)的char使用UTF16的方式编码,一个char占用两个字节,但是某些字符需要两个char来表示。所以,一个字符会占用2个或4个字节。

  Java中,外码中char使用UTF8的方式编码,一个字符占用1~6个字节。

  Java看起来设计得很像C++,但是为了使语言小和容易熟悉,设计者们把C++语言中许多可用的特征去掉了,这些特征是一般程序员很少使用的。例如,Java不支持go to语句,代之以提供break和continue语句以及异常处理。

  Java还剔除了C++的操作符过载(overload)和多继承特征,并且不使用主文件,免去了预处理程序。因为Java没有结构,数组和串都是对象,所以不需要指针。

  Java能够自动处理对象的引用和间接引用,实现自动的无用单元收集,使用户不必为存储管理问题烦恼,能更多的时间和精力花在研发上。

  Java中无论是汉字还是英文字母都是用Unicode编码来表示的,一个Unicode码是16位,每字节是8位,所以一个Unicode码占两字节。但是英文字母比较特殊,源自于8位(1字节)的ASCII吗,于是在Unicode码仅使用了低8位(1字节)就可以表示,高8位的话不使用也无所谓。所以

  System.out.println(c.getBytes().lenth()),得到的是2(字节)

  跟机器位数有关,Java不知道,在C和C++中,如果机器是16位的,int占用2个字节,如果是32位或64位则是4个字节,现在机器一般都是占用4个字节,字符类型占用1个字节。

本文地址:https://www.kudz.cc/post/56975.html
版权声明:本文为原创文章,版权归 酷读者 所有,欢迎分享本文,转载请保留出处!

发表评论


表情

还没有留言,还不快点抢沙发?