帮我解释下输出结果,谢谢!
#include "iostream.h"
int main() {
bool boolalpha = false;
char str1[] = "abc";
char str2[] = "abc";
const char str3[] = "abc";
const char str4[] = "abc";
const char* str5 = "abc";
const char* str6 = "abc";
boolalpha = str3==str4;
cout << boolalpha <<":"<< ( str1==str2 ) << endl;
cout << boolalpha <<":"<< ( str3==str4 ) << endl;
cout << boolalpha <<":"<< ( str5==str6 ) << endl;
}
/** out:
0 : 0
0 : 0
0 : 1
**/
[解决办法]
不同数组的首地址都不同
[解决办法]
str5和6指向同一块内存,没自己分配