字符与字符串的区别
首先他们完全不同
在c语言中
1、“字符“”用单引号作为定界符,“字符串”用双引号作为定界符;
2、“字符”在屏幕上打印一个字符的时候,需要在printf函数中,使用“%c”这个占位符。“字符串”需要用使用的是“%s”这个占位符;
3、 “字符”和“字符串”还有一个区别,“字符”占据一个字节,但是“字符串”是占据多个字节。
4、在“字符串”的结尾处,自动被编译器加上了’\0’这个字符,在ASCII码中,’\0’表示的是一个空字符。
5、类型不同,一个是String类型,是对象,一个是char类型,是基本数据类型
6、比较时必须把字符串转换成字符数组进行才能进行逐个比较
if ("String".getBytes()[0] == 'S'){ System.out.println("字符串String的首字符是字符S"); }
例子
'a'和"a"
1、本质区别
双引号里面的是字符串, 而单引号里面的代表字符。
2、输出区别
str = “a”输出的就是a这个字母;
str = ‘a’输出的测试65
3、底层区别
用单引号引起的一个字符实际上代表一个整数,整数值对应于该字符在编译器采用的字符集中的序列值。