char *str = "1234abcd"; 和 char str[] = "1234abcd"; 是不等价的,后者可以修改字符串的内容而前者是不行的,比如 char *str = "1234abcd"; str[1] = 'c'; 编译不会出错,但运行是会崩溃的