char *s中的s是指针,而指针是指向一块内存区域,它指向的内存区域的大小能够随时改变,并且当指针指向常量字符串时,它的内容是不能够被修改的,不然在运行时会报错。 char s[]中的s是数组首地址,而数组首地址对应着一块内存区域,其地址和容量在生命期里不会改变,只有数组的内容能够改变。