只有两个指向同一数组的指针才可以比较。指针即地址,指针比较是地址前后的比较。
例如:
void main()
{
int name[8]={1,2,3,4,5,6,7,8}
int *p1=name,*p2=p1+8-1;
for(int t;p1<p2;)
{
..
....
..
}
}
此代码段中p1、p2比较的就是地址。对于这两个指针,指向这个数组前面元素的指针小于指向后面元素的指针。不是根据指向的值。
如果单纯的是两个不相关的指针进行比较,一般编译不通过。
在C++中比较字符串大小可以用函数:strcmp()