C语言 字符数组与字符指针比较

C语言 字符数组与字符指针比较

#include<stdio.h>
/*
  字符数组会在定以后预先分配内存空间字符串是常量所以会直接把字符串拷贝到数组中,
  因为数组地址不同,所以不相等·
  字符指针不会预先分配内存空间,直接指向字符串常量,所以地址相同. 
*/
void compare()
{
char str1[]="hello world";
char str2[]="hello world";
char *str3="hello world";
char *str4="hello world";
if(str1==str2)
printf("str1 same str2");
else
printf("str1 not same str2");
if(str3==str4)
printf("\nstr3 same str4");
else
printf("\nstr3 not same str4");
}
int main(int agrc,char *argv[])
{
compare();
return 0;
}

猜你喜欢

转载自www.cnblogs.com/liubiyonge/p/9320988.html