我试图比较一个int和void*的工作,甚至是它们之间的比较
int i=1,j=2;
float a=1.1;
if((void *)i > (void *)j )
cout<<"i>j"<<endl;
else
cout<<"i<j"<<endl;
Run Code Online (Sandbox Code Playgroud)
输出是
i<j
Run Code Online (Sandbox Code Playgroud)
但是这个
if((void *)a > (void *)i )
cout<<"a>i"<<endl;
else
cout<<"a<i"<<endl;
Run Code Online (Sandbox Code Playgroud)
给出错误
error: invalid cast from type ‘float’ to type ‘void*’
Run Code Online (Sandbox Code Playgroud)
我以为我们可以抛出任何东西来搞乱指针?是不是这样?