有人吗?帮我看道题
#include<iostream>
using namespace std;
int main()
{
char str1[] = "abc";
char str2[] = "abc";
const char str3[] = "abc";
const char str4[] = "abc";
const char* str5 = "abc";
const char* str6 = "abc";
cout << boolalpha << ( str1==str2 ) << endl; // 输出什么?
cout << boolalpha << ( str3==str4 ) << endl; // 输出什么?
cout << boolalpha << ( str5==str6 ) << endl; // 输出什么?
return 0;
}
[解决办法]
boolalpha是什么?
[解决办法]
是 假.假.真 为什么呢
[解决办法]
字符串”abc”在常量区里只有一份。三组比较的都是地址:5,6为指向常量字符串的指针,所指向的地址相同。而前4个是将字符串的值复制
给栈上数组1~4,比较的是数组的首地址,各数组的地址不相同。