1. void* 到 int
在线程中常使用 (void *)100作为返回值
例如
线程退出返回的是100:pthread_exit((void *)100)
等待线程并获取返回值:pthread_join(tid, &retval)
其中的retval定义为void *,退出值使用(int)retval得到
【分析】
当你将一个整数(如100)转换为void *
类型时,实际上是将这个整数的内存地址转换为了一个通用指针。所以强制转换也仅仅是将指针转换为int类型的地址值
2. int 到 void*
int addr = ..... //存储的地址值
void *ptr = (void*)addr //将整型地址值转换成void*指针
这种一般比较好理解,也就是取地址操作