虽然我猜猜不太用的上,但是很想搞懂,为什么会出错
[Warning] cast from pointer to integer of different size [-Wpointer-to-int-cast]
[Warning] returning 'int' from a function with return type 'void *' makes pointer from integer without a cast [-Wint-conversion]
在我理解void是不允许有返回值的,但是void*可以是任意返回值,那么main中的变量b是int类型,s函数中的result也是int类型,return也是int类型,为什么会有这个报错呢?
大家解解看,是不是我钻牛角尖里去了
#include<stdio.h>
void *s(const void*);
int main(){
int a, b;
a = 3;
b = s(&a);
printf("%d", b);
return 0;
}
void *s(const void* num) {
int result;
result = *(int *)num + 1;
return result;
}