c – 将C样式字符串初始化为NULL与空字符串之间的区别

这三个是等价的:

char* p= NULL;
char* q = "";
char r[] = {'\0'};

我怀疑第一个与其他人不同,但我不完全确定.

最佳答案
char* p = NULL;

这将NULL指定给指针p,这意味着p不指向任何有效的内存地址.

char* q = "";
char r[] = {'\0'};

这些都创建空字符串,基本相同. q指向有效的内存地址,与前一个示例中的p不同. r是一个空字符串的数组.

转载注明原文:c – 将C样式字符串初始化为NULL与空字符串之间的区别 - 代码日志