Rumah > pembangunan bahagian belakang > C++ > Peraturan dan pengecualian untuk perbandingan penunjuk?

Peraturan dan pengecualian untuk perbandingan penunjuk?

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
Lepaskan: 2024-06-04 18:01:16
asal
755 orang telah melayarinya

Dalam C/C++, peraturan perbandingan penunjuk adalah seperti berikut: penunjuk yang menunjuk ke objek yang sama adalah sama. Penunjuk kepada objek yang berbeza tidak sama. Pengecualian: Penunjuk kepada alamat nol adalah sama.

Peraturan dan pengecualian untuk perbandingan penunjuk?

Peraturan dan Pengecualian untuk Perbandingan Penunjuk

Dalam pengaturcaraan C/C++, penunjuk ialah pembolehubah khas yang boleh menyimpan alamat pembolehubah lain. Memahami peraturan perbandingan penunjuk adalah penting untuk menguasai penggunaan penunjuk.

Peraturan:

  • Dua penunjuk menunjuk ke objek yang sama bandingkan benar (sama).
  • Perbandingan dua penunjuk yang menunjuk kepada objek berbeza adalah palsu (tidak sama).

Pengecualian:

  • Perbandingan adalah benar apabila kedua-dua penunjuk menunjuk kepada alamat kosong atau batal.

Contoh praktikal:

Program C berikut menunjukkan peraturan dan pengecualian perbandingan penunjuk:

#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;
}
Salin selepas log masuk

Output:

ptr1 和 ptr2 指向不同的对象。
ptr1 和 nullPtr 指向不同的对象。
nullPtr 和 nullPtr 指向同一对象。
Salin selepas log masuk

Atas ialah kandungan terperinci Peraturan dan pengecualian untuk perbandingan penunjuk?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan