发布网友 发布时间:2024-03-18 09:52
共1个回答
热心网友 时间:2024-11-25 07:04
是的,字符串“That”小于字符串“The”。因为是利用ASCII编码逐位按照顺序来比较的:第一位“T”相同,第二位“h”相同,第三位“a”<“e”,所以“That”小于“The”。
以compareTo()方法为例,两个字符串比较大小方法:
1、如果字符串相等返回值为0,不等返回其他数值。比较方法是先比较对应字符的大小(ASCII码顺序),从第一个字母开始比较。
2、如果第一个字符和参数的第一个字符不等,结束比较,返回他们之间的差值(ASCII码值)。(负值前字符串的值小于后字符串,正值前字符串大于后字符串)
3、如果第一个字符和参数的第一个字符相等,则以第二个字符和参数的第二个字符做比较,以此类推,直至比较的字符或被比较的字符有一方全比较完,这时就比较字符的长度。
扩展资料
C语言中的字符串都以字符串常量的形式出现或存储在字符数组中。同时,C语言提供了一系列库函数来对操作字符串,这些库函数都包含在头文件string.h中。
字符串常量是不可被修改的,一般用一对双引号("")括起的一串字符来表示字符串常量,如:"Hello!"、"\aWarning!\a"、"123abc\n"、""
字符串常量可以为空,如""就是一个空的字符串常量,但是即使为空,还是存在一个终止符NUL的。
字符串常量与指针关系密切,因为字符串常量的值,实际上表示的是存储这些字符的内存空间的地址,更准确地说是字符串常量中第1个字符的地址,而不是这些字符本身。
因此,在C语言中是不能直接进行字符串赋值的(因为没有字符串类型嘛)。在C语言中,常通过声明一个指向char类型的指针并将其初始化为一个字符串常量的方式来访问一个字符串。