我知道char*和char []之间的一些区别.
char x[] = "xxxx"
是一系列的字符;
char *y = "xxxx"
是一个指向文字(const)字符串的指针; 而且x[4]=='\0'
,*(y+4) == '\0'
也是.为什么sizeof(x)==5
和sizeof(y)==4
?
char x[] = "xxxx"
是一个大小为5的数组,包含xxxx和\ 0.
char *y = "xxxx"
是一个指向字符串的指针.它的长度是4个字节,因为这是指针的长度,而不是字符串.