【发布时间】:2017-07-09 05:02:09
【问题描述】:
int b[5] = {1,2,3,4,5};
int *s = &b[0];
int *p = &b[1];
int *q = &b[2];
int *r = &b[2];
我的问题是,当我使用 if( p < q < r) 比较 p < q < r 时,我收到了警告消息。
我首先想到的是(p < q) == True,所以不可能将布尔值与整数(r的地址值)进行比较。但是,当True 被视为整数时,它是1。对吗?所以,在我看来,1 < r 可能是有道理的。
我的想法有什么问题?
【问题讨论】:
-
请发布您的比较代码。
-
你不想比较整数而不是内存地址吗?
-
“所以我猜 1
-
您是取消引用指针还是只是比较指针?请分享确切的代码以获得更清晰的信息。
标签: c