声明后可以初始化字符串吗?
char *s;
s = "test";
Run Code Online (Sandbox Code Playgroud)
代替
char *s = "test";
Run Code Online (Sandbox Code Playgroud)
您可以,但是请记住,使用该语句,您可以将其存储在s指向分配给其他位置的只读字符串的指针中。任何修改它的尝试都将导致未定义的行为(即,在某些编译器上,它可以工作,但经常会崩溃)。这就是为什么通常您将a const char *用作该东西。