既然"abc"是返回常量区字符串的首字符的地址,为什么定义字符串数组时可以用char array[] = "abc";?这里定义的array[]是数组,而不是指针吧?数组怎么会等于指针?如果想解释成:数组名是数组首元素的地址,那么char array[] = {'a','b','c','\0'};这种表达好像又没法解释了?
```c char array1[] = {'a','b','c','\0'}; char array2[] = "abc"; char *pr1 = (char[]){'a','b','c','\0'}; // 用复合字面量表示 char *pr2 = "abc"; ``` 

