当几个指针赋值给相同的常量字符串时,它们实际上会指向相同的内存地址,但用常量内存初始化数组,情况就不同了:
char str1[] = "Hello World";
char str2[] = "Hello World";
char *str3 = "Hello World";
char *str4 = "Hello World";
if(str1 == str2 )
printf("str1 and str2 are same.\n");
else
printf("str1 and str2 are not same.\n");
if(str3== str3)
printf("str3 and str4 are same.\n");
else
printf("str3 and str4 are not same.\n");