Memahami Ungkapan Penunjuk: ptr , ptr, dan *ptr
Dalam pengaturcaraan C, ketiga-tiga ungkapan ini biasanya digunakan untuk memanipulasi penunjuk dan nilai yang ditunjukkannya. Memahami tingkah laku mereka adalah penting untuk berkesan menggunakan penunjuk.
1. *ptr
- Ungkapan ini dengan berkesan menyahrujuk penuding dahulu, mengembalikan nilai yang ditunjukkannya.
-
Kemudian, ia menambah penunjuk oleh satu unit, menghalakannya ke elemen seterusnya dalam tatasusunan atau aksara seterusnya dalam rentetan.
- Sebagai contoh, jika ptr menunjuk ke elemen pertama tatasusunan, *ptr akan mengembalikan nilai elemen tersebut dan kemudian menambah ptr untuk menghala ke elemen kedua.
2. * ptr
- Berbeza dengan ungkapan sebelumnya, yang ini pertama menambah penunjuk sebanyak satu unit.
-
Kemudian, ia menolak rujukan penunjuk , mengembalikan nilai yang ditunjukkan oleh penuding sekarang.
- Ini berguna apabila anda memerlukan untuk mengakses nilai elemen seterusnya tanpa mengabaikan penunjuk semasa.
3. *ptr
-
Ungkapan ini secara langsung menambah nilai pada lokasi yang ditunjuk oleh ptr.
- Pertama-tamanya menyahrujuk penunjuk, mengembalikan nilai yang ditunjukkannya.
-
Kemudian, ia menambah nilai oleh satu unit.
- Ini boleh digunakan untuk mengubah suai nilai yang ditunjukkan oleh ptr.
Contoh:
int arr[5] = {1, 2, 3, 4, 5};
int *ptr = arr;
printf("%d ", *ptr++); // Prints 1 and increments ptr to the second element
printf("%d ", *++ptr); // Increments ptr to the third element and prints 3
printf("%d\n", ++*ptr); // Increments the value at the third element and prints 4
Salin selepas log masuk
Output:
1 3 4
Salin selepas log masuk
Atas ialah kandungan terperinci Apakah Perbezaan Antara `*ptr `, ` *ptr` dan ` ptr` dalam C?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!