小编p.j*_*p.j的帖子

void指针之间的比较,它是定义还是编译依赖?

我试图比较一个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)

我以为我们可以抛出任何东西来搞乱指针?是不是这样?

c++ pointers

0
推荐指数
1
解决办法
870
查看次数

标签 统计

c++ ×1

pointers ×1