MPLAB C18 - ชนิดของตัวแปร

วันที่โพสต์: Oct 13, 2009 7:54:25 AM

MPLAB C18 - ชนิดของตัวแปร

เหมือนๆกับทุก complier ที่จะต้องมีตัวแปร เช่นเดียวกัน C18 complier มีตัวแปรทั้งที่เป็นชนิด char ,integer, float, double

นี่ก็เป็นเรื่องเบสิคทั่วๆำไป ที่ผู้ที่ต้องการเขียนโปรแกรมจะต้องรู้เกี่ยวกับชนิดของตัวแปรในภาษานั้น และขอบเขตของตัวแปรนั้นๆ ที่สามารถทำได้ เพราะถ้าหากเรากำหนดตัวแปร ตัวแปรหนึ่งแล้วไปเก็บค่าที่เกินขอบเขตของตัวแปรตัวนั้น จะเกิดอาการ overflow คือค่าที่เก็บจะย้อนกลับมาที่ค่าเริ่มต้นของมัน 

ตัวอย่างเช่น เรากำหนดให้ตัวแปร A เป็นตัวแปร  unsigned char แล้วให้ A เก็บค่าการนับอะไรก็ตาม เมื่อ A เก็บค่าการนับสะสมไปเรื่อยๆ เมื่อค่า A มีค่าไปจนถึงค่า 255 พอเราทำการบวกค่า A หรือเพิ่มค่า A ขึ้นไปอีกหนึ่งค่า ค่า A หลังจากการบวก เพิ่มค่า จะกลับกลายเป็น A = 0 เพราะว่า unsigned char สามารถเก็บค่าได้สูงสุด แค่ 255 เท่านั้น 

เราสามารถสร้างตัวแปร แล้วกำหนดชนิดตัวแปร ให้สามารถเก็บค่า ค่าหนึ่งๆ โดยเราต้องพิจารณาขอบเขต Minimum และ Maximum ที่เป็นไปได้ ตามตาราง 2-1 ข้างล่างนี้

สำหรับจำนวนตัวเลขที่เป็นทศนิยมแล้ว ใน MPLAB C18 เราสามารถใช้ได้ทั้งตัวแปรที่เป็นชนิด float และ double ตามตาราง 2-2 ข้างล่างนี้