Rumah masalah biasa Apakah perbezaan antara *p++ dan (*p)++

Apakah perbezaan antara *p++ dan (*p)++

May 23, 2023 am 11:48 AM
c bahasa

Perbezaan antara *p++ dan (*p)++ ialah: 1. *p++ ialah gabungan pengendali kenaikan postfix, (*p)++ ialah operator kenaikan postfix yang digunakan pada ungkapan *p; . Ungkapan *p++ mula-mula mengembalikan nilai yang ditunjuk oleh "p", dan kemudian menambah "p".

Apakah perbezaan antara *p++ dan (*p)++

Sistem pengendalian untuk tutorial ini: Sistem Windows 10, versi C18, komputer Dell G3.

Perbezaan antara *p++ dan (*p)++

*p++ dan (*p)++ ialah dua ungkapan berbeza:

  1. *p++: Ini ialah gabungan pengendali kenaikan postfix. Pertama, ungkapan *p akan membatalkan rujukan penunjuk p dan mengembalikan nilai yang ditunjuk oleh penunjuk. Kemudian, penunjuk p dinaikkan dan menunjuk ke elemen seterusnya. Oleh itu, ungkapan ini mula-mula mengembalikan nilai yang ditunjukkan oleh p dan kemudian menambah p.

  2. (*p)++: Ini ialah pengendali kenaikan postfix yang digunakan pada ungkapan *p. Pertama (*p) menolak rujukan penunjuk p dan mengembalikan nilai yang ditunjuk oleh penunjuk. Kemudian, nilainya dinaikkan. Oleh itu, ungkapan ini mula-mula mengembalikan nilai yang ditunjukkan oleh p dan kemudian menambah nilai tersebut.

Berikut ialah contoh kod untuk menggambarkan perbezaan antara kedua-duanya:

#include <iostream>
int main() {
int arr[] = {1, 2, 3};
int* p = arr;
std::cout << *p++ << std::endl;    // 输出: 1
std::cout << *p << std::endl;      // 输出: 2
p = arr;
std::cout << (*p)++ << std::endl;  // 输出: 1
std::cout << *p << std::endl;      // 输出: 2
return 0;
}
Salin selepas log masuk

Dalam contoh di atas, *p++ mengeluarkan p pertama Nilai ditunjuk kepada ialah 1, kemudian p ditambah kepada elemen seterusnya, dan kini p menunjukkan kepada 2. Dan (*p)++ mula-mula mengeluarkan nilai yang ditunjuk oleh p, 1, dan kemudian menambah nilai Sekarang nilai yang ditunjuk oleh p ialah 2. Ini menunjukkan perbezaan antara keduanya.

Atas ialah kandungan terperinci Apakah perbezaan antara *p++ dan (*p)++. 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

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Artikel Panas

R.E.P.O. Kristal tenaga dijelaskan dan apa yang mereka lakukan (kristal kuning)
2 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
Repo: Cara menghidupkan semula rakan sepasukan
1 bulan yang lalu By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Adventure: Cara mendapatkan biji gergasi
1 bulan yang lalu By 尊渡假赌尊渡假赌尊渡假赌

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Makna strlength dalam bahasa c Makna strlength dalam bahasa c Apr 03, 2025 pm 06:18 PM

Fungsi strlen () mendapat panjang rentetan, tidak termasuk watak kosong '\ 0': 1. Kirakan bilangan aksara tanpa aksara kosong; 2. Mengatasi rentetan sehingga watak kosong dijumpai; 3. Kembalikan panjang rentetan, ketik size_t.

Apakah bahasa C Apakah bahasa C Apr 03, 2025 pm 06:51 PM

Pengendali menunjukkan kepada ahli struktur atau kesatuan, dan digunakan sebagai expr.member, yang digunakan untuk mengakses atau memberikan nilai ahli.

Apa maksud EP dalam bahasa C Apa maksud EP dalam bahasa C Apr 03, 2025 pm 05:18 PM

EPS dalam bahasa C adalah singkatan "Epsilon", yang mewakili nombor positif yang sangat kecil, yang digunakan untuk mewakili kesilapan dalam operasi terapung. Kegunaannya termasuk: membandingkan kesamaan nombor titik terapung, menentukan had ketepatan, berfungsi sebagai keadaan berhenti untuk algoritma berulang, dan mencegah nombor dari bawah mengalir atau melimpah.

Apa maksud tidur dalam bahasa c Apa maksud tidur dalam bahasa c Apr 03, 2025 pm 06:33 PM

Fungsi tidur digunakan dalam bahasa C untuk menjeda bilangan detik yang ditentukan untuk pelaksanaan program, dan sintaks adalah tidur (detik int tidak ditandatangani). Apabila detik adalah 0, fungsi kembali dengan serta -merta, jika tidak, fungsi akan menjeda proses untuk bilangan detik yang ditentukan dan mengembalikan masa yang dijeda.

Apa maksud u16 dalam bahasa c Apa maksud u16 dalam bahasa c Apr 03, 2025 pm 06:42 PM

Dalam bahasa C, U16 mewakili integer 16-bit yang tidak ditandatangani yang digunakan untuk menyimpan integer bukan negatif. Certinya termasuk: 1. Saiz: 16-bit; 2. Julat: 0 hingga 65535; 3. Unsigned: Hanya nombor positif yang boleh disimpan, 0 adalah nilai minimum, dan 65535 adalah nilai maksimum.

Apa maksud HTOC dalam bahasa c Apa maksud HTOC dalam bahasa c Apr 03, 2025 pm 06:45 PM

Fungsi HTOC menukarkan rentetan heksadesimal ke integer. Ia mengimbas watak rentetan dengan watak, mengadili setiap nombor heksadesimal dengan kuasa yang sesuai mengikut kedudukannya dalam rentetan, dan kemudian mengumpulnya untuk mendapatkan hasil akhir.

Apa maksud bahasa C char? Apa maksud bahasa C char? Apr 03, 2025 pm 05:03 PM

Char ialah jenis data yang menyimpan watak tunggal dalam bahasa C, menduduki 1 byte memori, dengan julat nilai -128 ~ 127, dan nilai lalai ialah '\ 0' (watak kosong). Ia boleh digunakan untuk menyimpan dan memanipulasi aksara individu, tetapi tidak dapat menyimpan rentetan atau aksara Unicode secara langsung, dan tidak dapat dibandingkan secara langsung dengan rentetan.

Apa maksud {0} dalam bahasa c Apa maksud {0} dalam bahasa c Apr 03, 2025 pm 05:06 PM

Dalam C, pendakap {} digunakan untuk memulakan array, dan {0} mewakili senarai permulaan yang mengandungi elemen unik 0, memulakan semua elemen array ke 0.