mshd.net
当前位置:首页 >> C++中voiD*和int之间怎么转换? >>

C++中voiD*和int之间怎么转换?

为什么要这样转换? 这两个类型不相干啊,强制转换成功也是问题!说清楚你想实现的最终目的,好与你一起分析

void* 可以转成任意指针 byte[] 实际等效于byte* 所以转成byte*就可以了 byte* pbuff = (byte*)buffer; 指针指向的数据长度都是不知道的,要外部告知 如果实在必须是一个数组,有长度的情况下,可以 byte pbuff[len]; memcpy(pbuff, buffer, len...

如果你的 G函数的参数就想是个函数指针的话, 应该写成下面这种形式, 而不是使用 void* int G(int (*)(int)); 然后你就可以 G(F) 调用了. 如何把void*转换成函数指针: int G(void * f){ int value = 10; ((int (*)(int))f)(value); // 我觉得这样...

void是表示该函数不需要返回值 如 void hello(){} 在这个hello函数里面,你可以做你的事情,不需要返回任何值。但是也可以用return关键字来进行终止。 int声明的函数,表示该函数需要返回值,并且返回值为int 如 int hello(){ return 12; } 在这...

void真正的用途在下面两个方面: 对函数返回值的限定 对函数参数的限定 比如,函数没有返回值,那么函数可能会声明成这样:void fun(int a); 如果函数有返回值,但是函数没有参数,那么函数的可能会声明成这样:int fun(void)。 以上的情况都是...

如果是函数声明,只需要有变量类型,变量名称不是必须的,可有可无

能,但没意义了,两者相互抵消 *取该内存单元内容 &取该内存单元地址 对于*&a 先取a的地址,再取那个地址中的值, 还是a 所以*和&在一起的时候相互抵消,跟没加一样 就像!!a一样, 对a非一次,再对 非a 非一次 值学是a 没变啊 在高等数学中也...

两种类型不一样,不能够转换的。 void *是指针型,vector是对象类型,不能进行类型转换。 可以使用&操作符,获取vector地址,赋值给void*。 例如: vector v; //定义一个vector对象 void * p = (void *)&v; //获得该对象的地址,赋值给p指针

一般这个定义用在形参 或实参传递上 表示,这个指针为任意类型指针 如: int comp( void *a, void *b) { if ( *a > *b ) return 1; if ( *a==*b) return 0; return -1; } 调用: int a,b; a=3,b=5; printf("%d", comp( (void*)&a, (void *)b) );...

1:只有char 类型的指针值不支持cout

网站首页 | 网站地图
All rights reserved Powered by www.mshd.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com