什么是void*和void之间的区别*

Man*_*san 0 c++ pointers

可能重复:
在C中,为什么变量名前的星号,而不是类型之后?
宣告指针; 类型和名称之间的空格左侧或右侧的星号?

我已经使用指针一段时间,并用于声明像指针

int *x;
Run Code Online (Sandbox Code Playgroud)

但是通过一些代码注意到,在某些情况下*似乎是在数据类型之后,比如

void* setValue(){
 /*          */
}
Run Code Online (Sandbox Code Playgroud)

有什么区别以及为什么这样使用它

orl*_*rlp 12

语义上没什么.这是风格.

将星形放在变量旁边的优点是防止了这个常见错误:

char* str1, str2;
/* str2 is a char, not char* ! */

char *str1, *str2;
/* ok */
Run Code Online (Sandbox Code Playgroud)

返回类型不存在此问题,因此更重要.