Can an address be greater or lesser than each other? | Sololearn: Learn to code for FREE!
New course! Every coder should learn Generative AI!
Try a free lesson
+ 3

Can an address be greater or lesser than each other?

Suppose x=3 and y=4,we can easily compare them knowing that y is bigger ,can we compare their address too? Obviously we can't​ say that address of restaurant is greater than address of school in real life,but what about in terms of programming?? if so then please share the algorithm.

25th May 2017, 2:54 PM
Usama Zafar
Usama Zafar - avatar
3 Answers
+ 8
Not bad. This confused me quite a bit. I was thinking along the lines of "those operators won't work on addresses and the compiler would complain', but no. Please refer to this link: https://stackoverflow.com/questions/9086372/how-to-compare-pointers It includes how operators work on pointers. Anyways, I just did a little something to check: int *p = new int; int *q = new int; std::cout << p << " " << q << std::endl; if (p > q) std::cout << "p is larger."; else std::cout << "q is larger."; // From the above, you can see that the hex representation of the memory addresses are compared.
25th May 2017, 3:22 PM
Hatsy Rei
Hatsy Rei - avatar
+ 3
Yes. Addresses can be compared just like regular values. Take this as an example: struct t { int a; int b; }T; int main() { if (&T.b > &T.a) std::cout << "B's address is greater than A"; else { std::cout << "B's address is not greater than A"; } } The address of "b" in this struct will always be greater than "a". That's because in structs and classes, the next address is an offset from the last one in memory. In this case, they are 4 bytes apart because "a" is an int which is 4 bytes long on my system.
25th May 2017, 4:54 PM
aklex
aklex - avatar
+ 1
yes hatsy is right, you could compare them, but why would you want to do that, you can't know where everything is saved, even if it says it is on a greater address, it can be saved somewhere completely else because it is only telling how it is in virtual memory
25th May 2017, 3:55 PM
‎ɐısıօլɐ
‎ɐısıօլɐ - avatar