Berbagi teknologi

c Pelajari jalan menuju wawancara

2024-07-08

한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina

Apa perbedaan antara referensi dan pointer?
  • Pointer dan referensi keduanya merupakan konsep alamat. Sebuah pointer menunjuk ke bagian memori, dan isinya adalah alamat dari memori yang ditunjuk;

  • Program ini mengalokasikan area memori untuk variabel penunjuk tetapi tidak untuk referensi.

  • Saat menggunakan pointer, tambahkan * di depannya, dan referensi dapat langsung digunakan.

  • Referensi diinisialisasi ketika sudah ditentukan dan tidak dapat diubah nanti; Artinya, objek yang direferensikan tidak dapat diubah, tetapi objek penunjuknya dapat diubah.

  • Tidak ada referensi nol, tetapi ada petunjuk nol. Hal ini membuat kode yang menggunakan referensi lebih efisien daripada menggunakan pointer. Karena tidak perlu menguji keabsahan suatu referensi sebelum menggunakannya. Sebaliknya, pointer harus selalu diuji untuk mencegahnya menjadi nol.

  • Gunakan "sizeof" pada referensi untuk mendapatkan ukuran variabel, dan gunakan "sizeof" pada pointer untuk mendapatkan ukuran alamat variabel.

  • Secara teoritis tidak ada batasan jumlah level pointer, tetapi hanya ada satu level referensi. Artinya, tidak ada referensi ke referensi, tetapi bisa ada pointer ke pointer. int **p //Hukum, int