在C/C++中,指针比较规则如下:指向同一对象的指针相等。指向不同对象的指针不相等。例外:指向空地址的指针相等。
指针比较的规则和例外
在 C/C++ 编程中,指针是一种可以存储其他变量地址的特殊变量。理解指针比较的规则对于掌握指针的使用至关重要。
规则:
例外:
实战案例:
以下 C 程序演示了指针比较的规则和例外:
#include <stdio.h> int main() { int a = 10; int b = 20; int *ptr1 = &a; // ptr1 指向 a int *ptr2 = &b; // ptr2 指向 b int *nullPtr = NULL; // 空指针 // ptr1 和 ptr2 指向不同的对象 if (ptr1 == ptr2) { printf("ptr1 和 ptr2 指向同一对象。\n"); } else { printf("ptr1 和 ptr2 指向不同的对象。\n"); } // ptr1 和 nullPtr 指向不同的对象 if (ptr1 == nullPtr) { printf("ptr1 和 nullPtr 指向同一对象。\n"); } else { printf("ptr1 和 nullPtr 指向不同的对象。\n"); } // nullPtr 和 nullPtr 指向相同的空对象 if (nullPtr == nullPtr) { printf("nullPtr 和 nullPtr 指向同一对象。\n"); } else { printf("nullPtr 和 nullPtr 指向不同的对象。\n"); } return 0; }
输出:
ptr1 和 ptr2 指向不同的对象。 ptr1 和 nullPtr 指向不同的对象。 nullPtr 和 nullPtr 指向同一对象。
以上是指针比较的规则和例外?的详细内容。更多信息请关注PHP中文网其他相关文章!