【发布时间】:2014-12-15 09:35:53
【问题描述】:
我有以下代码:
#define NULL ((void*)0)
void* Globalptr = NULL;
void func(ptrtype* input)
{
((ptrtype*)Globalptr) = input;
}
我在((ptrtype*)Globalptr) = input; 上遇到错误,说“表达式必须是可修改的左值”
【问题讨论】:
-
为什么你需要一个#define for NULL?需要进行类型转换以使值适合变量。
-
NULL应该通过包含stdlib.h或定义它的其他标题之一来引入;不是自己写的。
标签: c pointers casting void-pointers