Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> การเขียนโปรแกรม C

Precedence ของ postfix ++ และ prefix ++ ใน C/C++


ที่นี่เราจะดู precedence ของ postfix++ และ prefix++ ใน C หรือ C++ Precedence ของ prefix ++ หรือ -- สูงกว่า dereference operator '*' และ postfix ++ หรือ -- มี priority สูงกว่าทั้ง prefix ++ และ dereference operator '*'

เมื่อ ptr เป็น pointer *ptr++ หมายถึง *(ptr++) และ ++*ptr หมายถึง ++(*ptr)

ตัวอย่าง

#include<iostream> using namespace std; int main() {    char arr[] = "Hello World";    char *ptr = arr;    ++*ptr;    cout << *ptr;    return 0; }

ผลลัพธ์

I

ptr ชี้ 'H' ก่อน หลัง ++*ptr เพิ่ม H ขึ้น 1 กลายเป็น 'I'

ตัวอย่าง

#include<iostream> using namespace std; int main() {    char arr[] = "Hello World";    char *ptr = arr;    *ptr++;    cout << *ptr;    return 0; }

ผลลัพธ์

e

ptr ชี้ 'H' ก่อน หลัง *ptr++ เพิ่ม pointer ptr ชี้ element ถัดไป คือ 'e'