指向同一个字符串的指针跟数组的地址区别-包含const
指向同一个字符串的指针和数组的地址区别-包含const


1、代码如下:
#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"; char *str7="abc"; char *str8="abc"; cout<<(str1==str2)<<endl; cout<<(str3==str4)<<endl; cout<<(str5==str6)<<endl; cout<<(str7==str8)<<endl; return 0; }2、输出结果如下:
3、分析:
因为str1-str4是申请了4个数组,所以他们的地址不同;而str5-str8是申请了4个指针,他们都指向同一个字符串,所以地址相同。