บทที่ 11 พอยเตอร์ C Programming C-Programming
จันทร์ดารา Surin Campus : มีอะไรบ้างในบทนี้ ตัวแปรพอยเตอร์ (Pointer) เป็นตัว แปรที่แปลกและแตกต่างไปจากตัว แปรที่เราศึกษากันมา เพราะตัว แปรอื่นๆ จะใช้เก็บข้อมูลที่ต้องการ แต่พอยเตอร์นั้นทำหน้าที่เป็นตัวชี้ C Programming C-Programming
จันทร์ดารา Surin Campus : ความหมาย พอยเตอร์จะเก็บค่า ตำแหน่งหรือ แอดเดรสใน หน่วยความจำของ ตัวแปรอื่นๆ ไว้ ไม่ได้เก็บข้อมูลที่ เราจะนำมาใช้งาน โดยตรง เช่น ถ้าการ เก็บข้อมูลเดิมเป็น ดังนี้ int age =23; char char = ‘a’; การประกาศแบบ พอยเตอร์ int age; int *pointer; age = 25; pointer = & age; ตัวแปรพอยเตอร์ age จะไม่ได้เก็บค่า 23 แต่จะเก็บค่า ตำแหน่งที่ข้อมูล 23 เก็บอยู่แทน C Programming C-Programming
จันทร์ดารา Surin Campus : พอยเตอร์ใช้งาน อย่างไร #include Void main() { int age; int *pointer; printf(“How old are you : ”); scanf(“%d”,&age); printf(“You are %d years olds.\n”,age); pointer = &age; *pointer =50; printf(“You are %d years old. \n, age); } C Programming C-Programming สร้างตัวแปรพอยเตอร์ชี้ไปยังตัว แปรแบบ int สร้างตัวแปรพอยเตอร์ชี้ไปยังตัว แปร age เปลี่ยนข้อมูลที่อยู่ในพอยเตอร์ ให้เป็นค่า 50 แทน
จันทร์ดารา Surin Campus : พอยเตอร์ใช้งาน อย่างไร #include void change(int *p) { *p = 50; printf(“now num = %d\n”,*p); } void main() { int num=20; int *pointer; printf(“now num = %d\n”,num); change(&num); } C Programming C-Programming now num =20 now num =50
จันทร์ดารา Surin Campus : พอยเตอร์ใช้งาน อย่างไร ตัวแปรในโปรแกรมที่แล้วมี ตัวแปร int ตัว เดียวคือ num ฟังก์ชัน change() มีตัวแปร p เท่านั้นที่ใช้ สำหรับชี้ไปยัง int การเรียก change() จะส่งค่าของแอดเดรส ของตัวแปร num ไปให้ ฟังก์ชัน change() จะมีโค้ดที่เปลี่ยนค่าตัว แปร num จาก 20 เป็น 50 C Programming C-Programming