谁跟我说说在C,C++,JAVA中int,char,各占几个字节好么

我们开好几门语言,我都搞糊涂了

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

目前在一般的电脑中,int占用4字节,32比特,数据范围为-2147483648~2147483647,也就是-2^31~2^31-1。

C/C++,char是单字符数据类型,只占1个字节。

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

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

扩展资料:

Java和C++的差异:

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

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

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

参考资料来源:百度百科-INT (数据类型)

参考资料来源:百度百科-char (计算机语言关键字)

参考资料来源:百度百科-Java (计算机编程语言)

温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2017-11-25
int 在C和C++的占用2个字节,在java中4个字节
char在C和C+中占一个字节
Java中无论是汉字还是英文字母都是用Unicode编码来表示的,一个Unicode码是16位,每字节是8位,所以一个Unicode码占两字节。但是英文字母比较特殊,源自于8位(1字节)的ASCII吗,于是在Unicode码仅使用了低8位(1字节)就可以表示,高8位的话不使用也无所谓。所以

char c='a';
System.out.println(c.getBytes().lenth()),得到的是1(字节)

但汉字就完整地使用了16位(2字节)的Unicode,所以
char c='中';
System.out.println(c.getBytes().lenth()),得到的是2(字节)本回答被提问者采纳
第2个回答  2012-04-04
在C语言z中,int占两个字节,char占一个字节。而在vc中int占四个字节,char占一个自己而在java中charchar占两个字节。int占四个字节
第3个回答  2019-10-14
C/C++:
char始终都是一个字节。在16位dos或Windows
95下,int占两个字节,long是四个字节;在98以后的Windows和Linux中,是32位,int占四个字节,与long相同。
Java:
因为是跨平台的,无论在哪里,int都是四个字节,因为字符是用Unicode编码的,所以char是两个字节。
第4个回答  2019-03-13
跟机器位数有关,Java不知道,在C和C++中,如果机器是16位的,int占用2个字节,如果是32位或64位则是4个字节,现在机器一般都是占用4个字节,字符类型占用1个字节。
相似回答