เลขคณิตตัวชี้ถูกใช้ในการดำเนินการทางคณิตศาสตร์ เช่น การบวก การลบ การเพิ่มขึ้น ฯลฯ ในภาษาซี เลขคณิตตัวชี้มี 4 แบบ เช่น การบวก การลบ การเพิ่มขึ้น และการลดลง ในเครื่องแบบ 32 บิต ค่าจะเพิ่มหรือลดค่าทีละ 2 และจะเพิ่มหรือลบตัวเลข 2* ในเครื่อง 64 บิต จะเพิ่มหรือลดค่าทีละ 4 และจะเพิ่มหรือลบตัวเลข 4*
นี่คือตัวอย่างเลขคณิตตัวชี้ในภาษา C
ตัวอย่าง
#include<stdio.h>
int main() {
int val = 28;
int *pt;
pt = &val;
printf("Address of pointer : %u\n",pt);
pt = pt + 5;
printf("Addition to pointer : %u\n",pt);
pt = pt - 5;
printf("Subtraction from pointer : %u\n",pt);
pt = pt + 1;
printf("Increment to pointer : %u\n",pt);
pt = pt - 1;
printf("Decrement to pointer : %u\n",pt);
return 0;
} ผลลัพธ์
Address of pointer : 3938439860 Addition to pointer : 3938439880 Subtraction from pointer : 3938439860 Increment to pointer : 3938439864 Decrement to pointer : 3938439860
ในโปรแกรมข้างต้น การคำนวณทางคณิตศาสตร์ (การบวก การลบ ฯลฯ) จะถูกนำไปใช้กับตัวแปรตัวชี้ *pt.
int *pt;
pt = &val;
printf("Address of pointer : %u\n",pt);
pt = pt + 5;
printf("Addition to pointer : %u\n",pt);
pt = pt - 5;
printf("Subtraction from pointer : %u\n",pt);
pt = pt + 1;
printf("Increment to pointer : %u\n",pt);
pt = pt - 1;
printf("Decrement to pointer : %u\n",pt);