C++ 常用的字符串定义与比较是否相等
1、直接用String 类定义
String bee="Temperature2";
比较相等:
int strcmp(const char* s1,const char* s2);
所在头文件:string.h
即:两个字符串自左向右逐个字符相比(按ASCII值大小相比较),直到出现不同的字符或遇’\0’为止。如:
“A”<”B”
“a”>”A”
“computer”>”compare”
特别注意:strcmp(const char s1,const char s2)这里面只能比较字符串,即可用于比较两个字符串常量,或比较数组和字符串常量,不能比较数字等其他形式的参数。
2、用C语言的方式实现
char a[20]="this my string char"; //定义一个字符串并初始化为 this my string char
char *b ="test string"; //直接使用常量字符串的地址,所以字串b是只读的。
比较相等
如果要比较的对象是两个string,则利用函数compare() 或者 ==
若要比较string s1和s2则写为:
s1.compare(s2)
若返回值为0,则两者相等。
- 注意
(1) 在比较两个字符串时不能利用符号“==”,“==”符号比较的是两个字符串的地址是否相等。
(2) 若是比较两个字符,则可以用”==”直接进行比较~
(3) 但在比较两个string对象时是可以利用“==”的,相等的话,则表达式的返回值为1,不等为0。
原文链接:https://blog.csdn.net/u011383596/article/details/116358632