出错提示:“void*”类型的值不能初始化“int*”类型的实体

int main(void){

void *data=malloc(8);
int *intdata=data;//这里出错提示:“void*”类型的值不能初始化“int*”类型的实体
intdata[0]=10000;
printf("%d\n",intdata[0]);
free(data);

return 0
}

这段代码是学习课程的时候老师给的,在老师那边是可以输出,我这边(vs2010)提示出错,求大神给解答!!!

第1个回答  推荐于2018-03-11
int *intdata = reinterpret_cast<int *>(data);
或者干脆 = (int *)data;
总之是缺少强制类型转换本回答被网友采纳

出错提示:“void*”类型的值不能初始化“int*”类型的实体
int *intdata = reinterpret_cast<int *>(data);或者干脆 = (int *)data;总之是缺少强制类型转换

不能将void*类型的值分配到int类型实体?
函数void *需要返回指针类型,而result是数据变量,类型不匹配。

...void *" 类型的值不能用于初始化 "int (*)[2]" 类型的实体_百度知 ...
IntelliSense: "void *" 类型的值不能用于初始化 "int (*)[2]" 类型的实体 5 这个C语言中的报错是什么意思呢... 这个C语言中的报错 是什么意思呢 展开  我来答 分享 新浪微博 QQ空间 2个回答 #热议# 大多数男性都抵触彩礼吗?为什么? 百度网友bf19c81 2014-12-16 · TA获得超过997个赞 ...

...错误: 从类型'void*'到类型'void (*)(int*, int)'的转换无效 [-fper...
直接赋值是通不过的...

C语言:不能将“int **”类型的值分配到“int”类型实体
这是一条编译错误提示。代表在代码中,把一个int**类型的值,赋值给了int类型的变量。类似于 int v;int *p = &v;然后做了 v = &p;这样的操作。类似操作,大多数是误写,本来要写 p=&v;但是写成了 v=&p;针对修改即可。如果确定要把int**值赋值给int,可以采用 v=(int)&p;的方式。不...

c语言中内存分配 不能将"void *" 的值分配Node_t 类型的实体. 谢谢
typedef struct Node_t* Node_t;typedef struct Nfa_t* Nfa_t;还有,你这种递归调用定义变量我还是头一次见到,会有问题吧?!!!struct Node_t { int num;int visited;Edge_t edges; \/\/node 定义用到Edge_t ???struct Node_t* next;};struct Edge_t { int c;Node_t from; \/\/nod...

main.c:52: 错误:从类型‘void* (*)(PrivInfo*)’到类型‘void* (*...
pthread_create()函数里调用的pthread_func1函数参数类型应该定义成void 修改如下:static void *pthread_func1( void *p_thiz) \/\/-- { PrivInfo *thiz=(PrivInfo *)p_thiz ; \/\/这里加个重新定义,并将p_thiz强制转换成相应的数据类型 ... 以下代码不用动 } ...

void含义
在指针操作中,如果我们有两个指向不同类型的指针p1(float*)和p2(int*),直接赋值就会出错,例如:"p1 = p2",会提示类型不匹配。这时,我们需要使用强制类型转换,如:"p1 = (float*)p2"。然而,void *的特性就有所不同,它可以接受任何类型的指针赋值,无需强制类型转换,如:"void *p1;...

int 类型的实参与int*类型的形参不兼容
传参数时不用加后面的 [10],直接传数组名就行,数组名就是指向该数组第一位的指针。

...将"HANDLE"类型的值分配到"HINSTANCE"类型的实体
if(!InitInstance(NULL,nCmdShow));注意了HINSTANCE和HANDLE不是同一个类型,别搞错了,你创建的第一个窗口给CreateWindow的一定是NULL,表示他的父亲是桌面(也就是没有父窗口)。因为宽字符规定统一用2个字符保存一个字符,这个字符可以使ascii码可以是汉字。模式选为未设置,则可以免很多问题,这你学...

相似回答