Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimanakah aritmetik penunjuk berfungsi dalam C++?

Bagaimanakah aritmetik penunjuk berfungsi dalam C++?

王林
王林asal
2024-06-03 20:28:02534semak imbas

Aritmetik penunjuk ialah cara memanipulasi penunjuk dalam C++, membenarkan operasi penambahan, penolakan dan pendaraban pada penunjuk. Operasi ini boleh digunakan untuk mengakses elemen tatasusunan dan aksara rentetan.

指针的算术运算在 C++ 中如何工作?

Cara aritmetik penunjuk berfungsi dalam C++

Penunjuk ialah sejenis pembolehubah yang menyimpan alamat pembolehubah lain. Aritmetik penunjuk membenarkan penambahan, penolakan dan pendaraban nilai penunjuk. Ini berguna apabila mengakses elemen tatasusunan dan aksara rentetan.

Operasi penambahan

  • Menambah penuding pada integer akan menambah bilangan bait yang sepadan dengan alamat yang ditunjuk oleh penuding.
  • Sebagai contoh, jika ptr menghala ke alamat pembolehubah jenis int, ptr + 1 akan menghala ke int seterusnya Alamat elemen. ptr 指向一个 int 类型变量的地址,ptr + 1 将指向下一 int 元素的地址。

减法运算

  • 指针减一个整数会在指针指向的地址上减少相应的字节数。
  • 与加法运算类似,它用于访问数组或者字符串中的更早元素。

乘法运算

  • 指针乘以一个表示元素大小的整数会使指针指向数组或字符串中相应索引的元素。
  • 例如,如果数组 arr 中每个元素大小为 4 字节,arr[2] 等价于 *(arr + 2)

Operasi tolak

Menolak integer daripada penunjuk akan mengurangkan bilangan bait yang sepadan pada alamat yang ditunjukkan oleh penunjuk.

🎜Sama seperti operasi penambahan, ia digunakan untuk mengakses elemen terdahulu dalam tatasusunan atau rentetan. 🎜🎜🎜🎜 Pendaraban 🎜🎜🎜🎜 Mendarab penunjuk dengan integer yang mewakili saiz elemen menyebabkan penuding menghala ke elemen pada indeks yang sepadan dalam tatasusunan atau rentetan. 🎜🎜Sebagai contoh, jika saiz setiap elemen dalam tatasusunan arr ialah 4 bait, arr[2] adalah bersamaan dengan *(arr + 2). 🎜🎜🎜🎜Kes praktikal🎜🎜🎜Berikut ialah serpihan program C++ yang menunjukkan aritmetik penunjuk: 🎜<pre class='brush:cpp;toolbar:false;'>#include &lt;iostream&gt; using namespace std; int main() { // 定义一个数组 int arr[] = {1, 2, 3, 4, 5}; // 获得数组第一个元素的指针 int *ptr = arr; // 使用指针算术访问数组元素 cout &lt;&lt; *ptr &lt;&lt; endl; // 输出 1 cout &lt;&lt; *(ptr + 1) &lt;&lt; endl; // 输出 2 return 0; }</pre>

Atas ialah kandungan terperinci Bagaimanakah aritmetik penunjuk berfungsi dalam C++?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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