-2
我有这样一段代码:的malloc:投给指针从不同大小的整数[-Wint到指针铸]
...
#include <stdlib.h>
...
typedef struct tToken
{
tState state; //stav lexemu
char *data; //hodnota lexemu
int row; //radek lexemu
int column; //sloupec lexemu
}tToken;
tToken token;
...
void *gcMalloc(int dataSize){
...
void *AllocatedData = (void*)malloc(dataSize);
return AllocatedData;
}
...
if(token.data == NULL)
token.data = (char *) gcMalloc(sizeof(char)); //there is the problem
但错误
警告:投给来自不同大小整数的指针[-Wint-to-pointer-cast]
仍然存在...有人可以解释我为什么吗?以及如何改变它?
您需要'#include'来使用'malloc'。 (我假设警告是在'malloc'调用的,如果没有,请更新你的问题。)我确定这是重复的,但我懒得跟踪它。 –
2014-10-09 21:27:57
编辑:)你可以看看它吗? – 2014-10-09 21:30:34
声明'gcMalloc'在哪里?可能你需要为任何头文件声明它添加一个'#include'指令。 (并且不要将'malloc'或'gcMalloc'的结果强制转换为'void *',而是将'void *'值隐式转换为目标指针类型。转换是不必要的,并且可以屏蔽错误) – 2014-10-09 21:32:08