|
![]() | 作者: buszker [buszker]
![]() |
登录 |
还烦高手举例说明! |
地主 发表时间: 04-08-24 18:15 |
![]() | 回复: Garu [syshunter] ![]() |
登录 |
void不可以,但可以定义指针void *,意义如下 void fun(void *pvoid) { ............. char *pchr=(char *)pvoid; ........ } 可能你会问为什么不直接传入char *类型,那为什么malloc的原形非要是 void *malloc(unsigned)返回VOID*类型呢?明白了吧。 例如 pthread_create(...,...,(void *)函数名,(void *)参数); 你就要用到void *类型了。 也许我解释的乱 ![]() |
B1层 发表时间: 04-08-24 19:03 |
![]() | 回复: Garu [syshunter] ![]() |
登录 |
忘了说: 如果有 void *pvoid; char *pchar; 你可以 pchar=(char *)pvoid; 但不可以 pvoid=(void *)pchar; [此贴被 Garu(syshunter) 在 08月24日20时07分 编辑过] |
B2层 发表时间: 04-08-24 20:06 |
![]() | 回复: shitalone [shitalone] ![]() |
登录 |
楼上解释的不错。声明void *的目的也就是为了以后能强制为任何的指针类型。 |
B3层 发表时间: 04-08-25 10:26 |
![]() | 回复: buszker [buszker] ![]() |
登录 |
多谢二位的解释 |
B4层 发表时间: 04-08-25 15:23 |
![]() | 回复: 286 [unique] ![]() |
登录 |
趁机学了一招.![]() ![]() ![]() |
B5层 发表时间: 04-08-25 17:31 |
|
20CN网络安全小组版权所有
Copyright © 2000-2010 20CN Security Group. All Rights Reserved.
论坛程序编写:NetDemon
粤ICP备05087286号