理解 C 中的 NULL 指针
Understanding NULL pointer in C
我在一些代码中发现 NULL
指针定义如下 -
#define NULL ((char *)0)
我发现这些代码编译得很好。但我不明白这是如何工作的。谁能解释一下如何将 0 转换为 char
指针?
将其用作 FILE 指针是否有效 -
FILE *fp = NULL;
C 库宏 NULL 是一个空指针的值 constant.It 可以定义为 ((void*)0), 0 或 0L 取决于编译器供应商。
根据编译器的不同,NULL 的声明可以是
#define NULL ((char *)0)
或
#define NULL 0L
或
#define NULL 0
And is it valid to use it as a FILE pointer making null-->
Yes.
我在一些代码中发现 NULL
指针定义如下 -
#define NULL ((char *)0)
我发现这些代码编译得很好。但我不明白这是如何工作的。谁能解释一下如何将 0 转换为 char
指针?
将其用作 FILE 指针是否有效 -
FILE *fp = NULL;
C 库宏 NULL 是一个空指针的值 constant.It 可以定义为 ((void*)0), 0 或 0L 取决于编译器供应商。 根据编译器的不同,NULL 的声明可以是
#define NULL ((char *)0)
或
#define NULL 0L
或
#define NULL 0
And is it valid to use it as a FILE pointer making null--> Yes.