提一个简单的问题:为什么这段代码在cpp时编译不通过?
下面这段代码,如果是在文件扩展名为cpp时,编译就出错了,
static PTSTR pText;
pText = malloc(sizeof(pText));
错误信息为:
error C2440: '=' : cannot convert from 'void *' to 'char *'
Conversion from 'void*' to pointer to non-'void' requires an explicit cast
必须加上(char *)才可以。
但,如果把文件的扩展名改为c的话,就可以通过了,请各位高手帮我解释一下,这是为什么?谢谢!