C语言只有字符数组,且字符数组以\0
结尾。
char str[]=”test”;
为什么是5个字节,因为C语言的标准输出函数printf
对字符串进行输出时,会判断当前字符是不是\0
,如果是\0
的话,就停止输出。
在java中字符串有String类,不是以\0
作为结束依据。
Java里面一切都是对象,字符串String类中有获取长度方法,编译器就可以确定要输出的字符个数,当然也就没有必要去浪费那1字节的空间用以标明字符串是否结束。(String类有length()
方法)
String源码