#include<iostream>
using namespace std;
char a[] = "abc";
char b[] = "abc";
const char c[] = "abc";
const char d[] = "abc";
const char *e = "abc";
const char *f = "abc";
int main()
{
printf("a=%x, b=%x, a=b? %d\n", a, b, a == b);
printf("c=%x, d=%x, c=d? %d\n", c, d, c == d);
printf("e=%x, f=%x, e=f? %d\n", e, f, e == f);
return 0;
}
同过结果比较可以知道:
1. 声明中带有[]的是数组,会独立分配空间。
2. const char * e和f 所表示的是相同的数据区。