c - 如何理解char *fptr = NULL, *field;的含义?

标签 c pointers ansi-c

我想知道以下表达式的含义:

char *fptr = NULL, *field;

谢谢!

最佳答案

声明一个char指针fptr并将其初始化为NULL并声明另一个char指针字段NULL((void *)0) 只是一个无效的指针值,您可以使用它来验证指针是否有效。

NULL 分配给指针可以帮助您避免取消引用未初始化的指针,例如 malloc 在失败时返回 NULL

这样,如果在调用 malloc 后检查指针是否为 NULL,就可以防止未定义的行为。

关于c - 如何理解char *fptr = NULL, *field;的含义?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27849847/

相关文章:

c++ - 类模板,无效的空指针(字符串)

c++ - 继承的典型问题

c - G-WAN 类似物

c |比较字符串格式

c - 为什么这段代码在 64 位架构上会出现段错误,但在 32 位架构上却可以正常工作?

c - 使用信号量同步进程

c - 如何从链表中删除重复的奇数?

c - 改进的幂递归函数

c - 这个代码块在做什么? (u > 0) - (u < 0)

用于编译测试的 CMake 和 CMocka 标准断言