C语言 NULL赋结构体指针变量

可以实现吗?怎样实现。

C语言中,标准库头文件stdio.h定义了NULL:
#define NULL ((void*)0)
可见NULL是一个类型为void*、值等于0的对象。由于C语言中void*类型对象可以隐式转换为任意指针类型,所以要赋值给一个上述指向具体类型的一般指针无需显式转换(C++中NULL的实现有所不同)。
例如
struct node a;/*struct node是一个已经定义的结构体类型。*/
struct node* p = &a;
p = NULL;
====
[原创回答团]

参考资料:原创

温馨提示:答案为网友推荐,仅供参考
第1个回答  2016-01-13
1、既然是指针变量,那么将一个变量的地址值赋值给该指针变量即可!
2、至于具体讲一个地址值赋值给指针有两种方法:一种就是用取地址符&来操作内嵌变量,另一种就是通过采用malloc函数动态开辟内存并将内存地址值赋值给指针变量。
3、举例说明:定义int型指针变量int * p;和int型变量int a;那么将a的地址值赋值给p:p=&a;另一种方式是动态方式:p = (int*)malloc(size(int));
第2个回答  2010-06-12
可以实现
p->next=NULL

说明链表的下一个结点是空的
第3个回答  2010-06-12
struct Node{
int data;
struct Node * next=NULL; // 这就是你实现想的那种情况
};
第4个回答  2010-06-12
struct tt
{
int x;
};
tt *p=NULL;

类似这种就行

去试试吧。
相似回答