SlideShare a Scribd company logo
1 of 16
Download to read offline
กำรประกำศตัวแปรควรเลือกใช้ชนิดข้อมูลที่เหมำะสม และตั้ง
ชื่อตัวแปรตำมกฎในกำรตั้งชื่อเสมอ ซึ่งชนิดข้อมูลต่ำง ๆ ในภำษำ C มี
ดังนี้
1 Integer Type (ชนิดข้อมูลแบบจำนวนเต็ม)
2 Character Type (ชนิดข้อมูลแบบตัวอักษร)
3 String Type (ชนิดข้อมูลแบบข้อควำม)
4 Floating Type (ชนิดข้อมูลแบบจำนวนทศนิยม)
1

Integer Type (ชนิดข้อมูลแบบจำนวนเต็ม )

Integer เป็นชนิดข้อมูลแบบจำนวนเต็ม ประกอบไปด้วย
จ ำนวนเต็ ม บวก จ ำนวนเต็ ม ลบ และจ ำนวนเต็ ม ศู น ย์ ซึ่ ง ใน
ภำษำ C ได้แบ่งจำนวนเต็มออกเป็นชนิดต่ำง ๆ ซึ่งแต่ละชนิดมี
ขนำดและขอบเขตของกำรใช้งำนที่แตกต่ำงกั น กำรเลือกใช้
จำนวนเต็มชนิดใดในกำรประกำศตัวแปรนั้นก็ขึ้นอยู่กับขนำดใน
กำรจัดเก็บข้อมูลของตัวแปรนั้น ๆ
1 Integer Type (ชนิดข้อมูลแบบจำนวนเต็ม)

ในข้อมูลชนิดเดียวกันของภำษำ C อำจจะมีควำมแตกต่ำงใน
เรื่องของขนำดและขอบเขตชนิดข้อมูลได้ ซึ่งจะขึ้นอยู่กับระบบปฏิบัติกำร
ที่ใช้งำน เช่น
• ในระบบปฏิบัติกำร 16 บิต ข้อมูลชนิด int จะเป็น 16 บิต หรือ 2
ไบต์
• ในระบบปฏิบัติกำร 32 บิต ข้อมูลชนิด int จะเป็น 32 บิต หรือ 4
ไบต์
ตำรำงแสดงขนำดและขอบเขตข้อมูล
ชนิดข้อมูล
Short int

int

กำรคิดเครืองหมำย
่
signed (คิดเครื่องหมำย)
unsigned (ไม่คิดเครืองหมำย)
่
signed (คิดเครื่องหมำย)

ขนำดไบต์
2

4

unsigned (ไม่คิดเครืองหมำย)
่
Long int

signed (คิดเครื่องหมำย)

unsigned (ไม่คิดเครืองหมำย)
่

4

ช่วงข้อมูล
-32,768 ถึง 32,767
0 ถึง 65,535
-2,147,483,648 ถึง
2,147,483,647
0 ถึง 4,294,967,295
-2,147,483,648 ถึง
2,147,483,647
0 ถึง 4,294,967,295
กำรกำหนดค่ำให้กับตัวแปรชนิดจำนวนเต็ม
• จะต้องเป็นค่ำตัวเลขไม่มีจุดทศนิยม
• ห้ำมใช้เครื่องหมำย , หรือช่องว่ำงคั่นระหว่ำงตัวเลข เช่น 1,234
ซึ่งถือว่ำผิด
• กรณีเป็นค่ำบวกไม่จำเป็นต้องใส่เครื่องหมำย + นำหน้ำค่ำ แต่
กรณีเป็นค่ำลบต้องใส่เครื่องหมำย – นำหน้ำค่ำ
• ช่วงตัวเลขจำนวนเต็มควรอยู่ในช่วงชนิดข้อมูลนั้น ๆ
• สำมำรถใช้เครื่องหมำย suffix ต่อท้ำยค่ำที่กำหนดให้ตัวแปรได้
โดยใช้ L ต่อท้ำยชนิดข้อมูล long หรือใช้ U ต่อท้ำยค่ำเป็น unsigned
(ใช้ตัวพิมพ์ใหญ่หรือเล็กควำมหมำยเหมือนกัน)
2 Character Type (ชนิดข้อมูลแบบตัวอักษร)

Char เป็นชนิดข้อมูลแบบอักษรตัวเดียว มีขนำด 1 ไบต์ หรือ
8 บิต โดยจะกำหนดค่ำอยู่ในเครื่องหมำย ‘ ’ ซึ่งเป็นได้ทั้ง
ตั ว อั ก ษร (Letter), ตั ว เลข (Digit) และสั ญ ลั ก ษณ์ พิ เ ศษ
(Special
Symbols) ลักษณะสำคัญของข้อมูลชนิดนี้คือ ไม่
สำมำรถนำไปคำนวณได้ ตัวอย่ำงเช่น ตัวอักษร ‘2’ แตกต่ำง
จำกตัวเลข 2 ดังนั้น ‘2’ + 3 จึงไม่สำมำรถประมวลผลได้ในกำร
เขียนโปรแกรมภำษำ C
3 String Type (ชนิดข้อมูลแบบตัวข้อควำม)

ในควำมจริงนั้น ตัวแปรชนิดข้อควำมไม่มีกำรกำหนดไว้ใน
ภำษำ C แต่เรำสำมำรถใช้ตัวแปรชนิดข้อควำมในรูปแบบของ
ชุดตัวแปรอักขระได้โดยใช้เทคนิคในเรื่องของ Array เข้ำมำช่วย
กำรก ำหนดค่ ำ ข้ อ ควำมให้ กั บ ตั ว แปรจะอยู่ ภ ำยใน
เครื่องหมำย (“ ”) โดยในกำรสร้ำงต้องประกำศขนำด Array
ไว้ล่วงหน้ำ เพื่อเป็นกำรจองพื้นที่สำหรับขนำดของข้อมูล
เหนื่อย

ก็
นัก

พักก่อน
4 Floating Point Type (ชนิดข้อมูลแบบตัวจำนวนทศนิยม)

Floating Point Type เป็นชนิดข้อมูลแบบตัวเลขทศนิยม
ที่สำมำรถนำไปคำนวณทำงคณิตศำสตร์ได้ ซึ่งอำจจะมีจุด
ทศนิ ย มหรื อ ไม่ มี จุ ด ทศนิ ย มก็ ไ ด้ โดยสำมำรถเขี ย นในรู ป
ทศนิยมได้ ดังนี้
• เลขทศนิยม เช่น 12.568, -13.5
• เลขทศนิยมแบบยกกำลัง เช่น 2.004E+5, 4.10956E-25
ซึ่ง 2.004E+5 ก็คอ 2.004 x 105
ื
ส่วน 4.10956E ก็คอ 4.10956 x 10-25
ื
ตำรำงแสดงขนำดและขอบเขตข้อมูล
ชนิดข้อมูล

ขนำดไบต์

ช่วงข้อมูล

float
double
long double

4
8
10

3.4 x 10-38 ถึง 3.4 x 1038

1.7 x 10-308 ถึง 1.7 x 10308
3.4 x 10-4932 ถึง 1.1 x 104932
จุดสังเกตพบว่ำ ชนิดข้อมูลแบบทศนิยมจะเป็นแบบ signed (คิด
เครื่องหมำย) เสมอ ซึ่งเรำสำมำรถกำหนดค่ำให้ตัวแปร โดยคำนึงถึง
ข้อกำหนดดังนี้จะต้องเป็นค่ำตัวเลขที่สำมำรถมีจุดทศนิยมได้
• ห้ำมใช้เครื่องหมำย , หรือช่องว่ำงคั่นระหว่ำงตัวเลข เช่น 1,234.03
• กรณีเป็นค่ำบวกไม่จำเป็นต้องใส่เครื่องหมำย + นำหน้ำค่ำ แต่ใน
กรณีเป็นค่ำลบต้องใส่เครื่องหมำย – นำหน้ำค่ำเสมอ
• กำรเขียนในรูปแบบใช้ตัวอักษร E ค่ำที่ถูกกำหนดสำมำรถกำหนด
ได้ทั้งค่ำบวกและค่ำลบ
• สำมำรถใช้เครื่องหมำย suffix ต่อท้ำยค่ำที่กำหนดให้ตัวแปรได้
โดยใช้ L ต่อท้ำยชนิดข้อมูล long double หรือใช้ F ต่อท้ำยค่ำที่เป็น
double (ใช้ตัวพิมพ์ใหญ่หรือเล็กควำมหมำยเหมือนกัน)
ค่ำคงที่ (Constants)
ค่ำคงที่ (Constants) คือ ค่ำข้อมูลชนิดใดชนิดหนึ่งที่ไม่มีกำรเปลี่ยนแปลงใน
ขณะที่โปรแกรมทำงำน ตัวอย่ำงเช่น ค่ำ  ซึ่งมีค่ำเท่ำกับ 3.14 เป็นต้น ซึ่งใน
ภำษำ C สำมำรถใช้งำนค่ำคงที่ได้ 3 รูปแบบดังนี้
1. ระบุค่ำโดยตรง (Literal Constants) เป็นกำรกำหนด
ค่ำคงที่เพื่อใช้งำนโดยตรง โดยไม่มีกำรกำหนดค่ำผ่ำนตัวแปร
ใด ๆ ทั้งสิ้น ตัวอย่ำงเช่น ‘I’, “Love Thailand”, ‘007’ เป็นต้น
2. นิยำมโดย # (Defined Constants) เป็นกำรกำหนดค่ำคงที่
โดยกำรประกำศใช้งำนไว้ในส่วนของเฮดเดอร์ไฟล์

3. เก็บไว้ในตัวแปร (Memory Constants) เป็นกำรกำหนด
ค่ำคงที่ในรูปแบบของตัวแปร
กฎของกำรแปลงชนิดของข้อมูล
(Data Type Conversion)
ในกำรเขียนโปรแกรมเพื่อกำหนดกำรทำงำนอย่ำงใดอย่ำงหนึ่ง บำครั้ง
อำจมีชนิดข้อมูลต่ำง ๆ ในกำรประมวลผลมำกกว่ำ 1 ชนิด ดังนั้น ก่อน
ประมวลผลข้อมูลก็ควรแปลงข้อมูลต่ำง ๆ ให้มีชนิดข้อมูลเดียวกันก่อน
หลักในกำรแปลงชนิดของข้อมูล ซึ่งสำมำรถแปลงได้ 2 วิธีดงนี้
ั

Implicit Type Conversion

Explicit Type Conversion
Implicit Type Conversion
Implicit Type Conversion
หลักกำรแปลงชนิดข้อมูลในวิธีนี้คือ คอมไพเลอร์จะทำหน้ำที่แปลง
ชนิดข้อมูลของข้อมูลที่มีค่ำนัยสำคัญต่ำไปเป็นชนิดข้อมูลชนิดเดียวกันกับข้อมูล
ที่มีค่ำนัยสำคัญสูงกว่ำในชุดคำสั่งนั้น ๆ โดยอัตโนมัติ สำหรับลำดับนัยสำคัญ
Long double
ของชนิดข้อมูล สำมำรถอธิบำยได้ ดังรูป
double
float

unsigned long int

long int
unsigned int

int
short
char

ลำดับนัยสำคัญ
(Signifiance)
Explicit Type Conversion (Casting)

เป็นกำรเปลี่ยนประเภทชนิดข้อมูลเป็นชนิดข้อมูลตำมที่เรำต้องกำร
โดยใช้ Explicit Type Conversion (Casting) ซึ่งมีรูปแบบดังนี้
(DataType) ExpressionOrVariableName

โดยที่ DataType คือ ชนิดข้อมูลปลำยทำง
ExpressionOrVariableName คือ นิพจน์หรือตัวแปรที่ต้องกำร
แปลงข้อมูล
ที่มำ : คู่มืออบรมครูวิทยำศำสตร์ คณิตศำสตร์ คอมพิวเตอร์ โลก ดำรำศำสตร์ และอวกำศ ระดับมัธยมศึกษำตอนปลำย
หนังสือเรียนรำยวิชำเพิ่มเติม กำรเขียนโปรแกรมเบื้องต้นด้วยภำษำ C บริษทซัคเซสมีเดีย
คู่มือเรียนเขียนโปรแกรมภำษำ สำนักพิมพ์ IDC PREMIER

More Related Content

What's hot

ค่าตัวแปรและตัวดำเนินการ [Web-Programming]
ค่าตัวแปรและตัวดำเนินการ [Web-Programming]ค่าตัวแปรและตัวดำเนินการ [Web-Programming]
ค่าตัวแปรและตัวดำเนินการ [Web-Programming]Khon Kaen University
 
Pbl2 นะแนนxปิ้น
Pbl2 นะแนนxปิ้นPbl2 นะแนนxปิ้น
Pbl2 นะแนนxปิ้นDararat Worasut
 
ใบความรู้ที่ 5
ใบความรู้ที่  5ใบความรู้ที่  5
ใบความรู้ที่ 5SubLt Masu
 
Java Programming [2/12] : Overview of Java Programming Language
Java Programming [2/12] : Overview of Java Programming LanguageJava Programming [2/12] : Overview of Java Programming Language
Java Programming [2/12] : Overview of Java Programming LanguageIMC Institute
 

What's hot (13)

ตัวแปรกับชนิดของข้อมูล
ตัวแปรกับชนิดของข้อมูลตัวแปรกับชนิดของข้อมูล
ตัวแปรกับชนิดของข้อมูล
 
ค่าตัวแปรและตัวดำเนินการ [Web-Programming]
ค่าตัวแปรและตัวดำเนินการ [Web-Programming]ค่าตัวแปรและตัวดำเนินการ [Web-Programming]
ค่าตัวแปรและตัวดำเนินการ [Web-Programming]
 
3.3. ชนิดของข้อมูล
3.3. ชนิดของข้อมูล3.3. ชนิดของข้อมูล
3.3. ชนิดของข้อมูล
 
Pbl2 docx
Pbl2 docxPbl2 docx
Pbl2 docx
 
Pbl2 นะแนนxปิ้น
Pbl2 นะแนนxปิ้นPbl2 นะแนนxปิ้น
Pbl2 นะแนนxปิ้น
 
ใบความรู้ที่ 5
ใบความรู้ที่  5ใบความรู้ที่  5
ใบความรู้ที่ 5
 
คณิต
คณิตคณิต
คณิต
 
โครงสร้างของภาษา C
โครงสร้างของภาษา Cโครงสร้างของภาษา C
โครงสร้างของภาษา C
 
Java Programming [2/12] : Overview of Java Programming Language
Java Programming [2/12] : Overview of Java Programming LanguageJava Programming [2/12] : Overview of Java Programming Language
Java Programming [2/12] : Overview of Java Programming Language
 
Database
DatabaseDatabase
Database
 
ตัวแปรและคำสงวน
ตัวแปรและคำสงวนตัวแปรและคำสงวน
ตัวแปรและคำสงวน
 
เครื่องหมายวรรคตอน
เครื่องหมายวรรคตอนเครื่องหมายวรรคตอน
เครื่องหมายวรรคตอน
 
งานนำเสนอ1
งานนำเสนอ1งานนำเสนอ1
งานนำเสนอ1
 

Similar to ชนิดของข้อมูล

ตัวแปรในภาษาซี
ตัวแปรในภาษาซีตัวแปรในภาษาซี
ตัวแปรในภาษาซีboky_peaw
 
บทที่ 3 พื้นฐานภาษา Java
บทที่ 3 พื้นฐานภาษา Javaบทที่ 3 พื้นฐานภาษา Java
บทที่ 3 พื้นฐานภาษา JavaItslvle Parin
 
บทที่ 3 พื้นฐานภาษา Java
บทที่ 3 พื้นฐานภาษา Javaบทที่ 3 พื้นฐานภาษา Java
บทที่ 3 พื้นฐานภาษา JavaItslvle Parin
 
ชนิดข้อมูล
ชนิดข้อมูลชนิดข้อมูล
ชนิดข้อมูลmycomc55
 
ตัวแปรชุดและตัวแปรอักขระ
ตัวแปรชุดและตัวแปรอักขระตัวแปรชุดและตัวแปรอักขระ
ตัวแปรชุดและตัวแปรอักขระAreeya Onnom
 
ตัวแปรชุดและตัวแปรอักขระ
ตัวแปรชุดและตัวแปรอักขระตัวแปรชุดและตัวแปรอักขระ
ตัวแปรชุดและตัวแปรอักขระAreeya Onnom
 
บทที่3การสร้างตารางฐานข้อมูล
บทที่3การสร้างตารางฐานข้อมูลบทที่3การสร้างตารางฐานข้อมูล
บทที่3การสร้างตารางฐานข้อมูลniwat50
 

Similar to ชนิดของข้อมูล (20)

ชนิดของข้อมูล
ชนิดของข้อมูลชนิดของข้อมูล
ชนิดของข้อมูล
 
Work
WorkWork
Work
 
3.3 ชนิดของข้อมูล
3.3 ชนิดของข้อมูล3.3 ชนิดของข้อมูล
3.3 ชนิดของข้อมูล
 
3.3 ชนิดของข้อมูล
3.3 ชนิดของข้อมูล3.3 ชนิดของข้อมูล
3.3 ชนิดของข้อมูล
 
ภาษา C#
ภาษา C#ภาษา C#
ภาษา C#
 
3.5 การแสดงผลและการรับข้อมูล
3.5 การแสดงผลและการรับข้อมูล3.5 การแสดงผลและการรับข้อมูล
3.5 การแสดงผลและการรับข้อมูล
 
ตัวแปรในภาษาซี
ตัวแปรในภาษาซีตัวแปรในภาษาซี
ตัวแปรในภาษาซี
 
Ch2
Ch2Ch2
Ch2
 
บทที่ 3 พื้นฐานภาษา Java
บทที่ 3 พื้นฐานภาษา Javaบทที่ 3 พื้นฐานภาษา Java
บทที่ 3 พื้นฐานภาษา Java
 
บทที่ 3 พื้นฐานภาษา Java
บทที่ 3 พื้นฐานภาษา Javaบทที่ 3 พื้นฐานภาษา Java
บทที่ 3 พื้นฐานภาษา Java
 
ชนิดข้อมูล
ชนิดข้อมูลชนิดข้อมูล
ชนิดข้อมูล
 
Chapter 02 Flowchart
Chapter 02 FlowchartChapter 02 Flowchart
Chapter 02 Flowchart
 
Intro c
Intro cIntro c
Intro c
 
ตัวแปรชุดและตัวแปรอักขระ
ตัวแปรชุดและตัวแปรอักขระตัวแปรชุดและตัวแปรอักขระ
ตัวแปรชุดและตัวแปรอักขระ
 
ตัวแปรชุดและตัวแปรอักขระ
ตัวแปรชุดและตัวแปรอักขระตัวแปรชุดและตัวแปรอักขระ
ตัวแปรชุดและตัวแปรอักขระ
 
บท3
บท3บท3
บท3
 
บทที่3การสร้างตารางฐานข้อมูล
บทที่3การสร้างตารางฐานข้อมูลบทที่3การสร้างตารางฐานข้อมูล
บทที่3การสร้างตารางฐานข้อมูล
 
บท3
บท3บท3
บท3
 
12
1212
12
 
Vsd2013 02 use_program
Vsd2013 02 use_programVsd2013 02 use_program
Vsd2013 02 use_program
 

More from รัสนา สิงหปรีชา

บทที่ 6-การใช้งานเทคโนโลยีสารสนเทศอย่างมีความรับผิดชอบ
บทที่ 6-การใช้งานเทคโนโลยีสารสนเทศอย่างมีความรับผิดชอบบทที่ 6-การใช้งานเทคโนโลยีสารสนเทศอย่างมีความรับผิดชอบ
บทที่ 6-การใช้งานเทคโนโลยีสารสนเทศอย่างมีความรับผิดชอบรัสนา สิงหปรีชา
 
บทที่ 1 เทคโนโลยีสมัยใหม่เอาลงบล๊อก
บทที่ 1 เทคโนโลยีสมัยใหม่เอาลงบล๊อกบทที่ 1 เทคโนโลยีสมัยใหม่เอาลงบล๊อก
บทที่ 1 เทคโนโลยีสมัยใหม่เอาลงบล๊อกรัสนา สิงหปรีชา
 
3.1 การทำงานขั้นพื้นฐานของคอมพิวเตอร์
3.1 การทำงานขั้นพื้นฐานของคอมพิวเตอร์3.1 การทำงานขั้นพื้นฐานของคอมพิวเตอร์
3.1 การทำงานขั้นพื้นฐานของคอมพิวเตอร์รัสนา สิงหปรีชา
 
3.1 การทำงานขั้นพื้นฐานของคอมพิวเตอร์
3.1 การทำงานขั้นพื้นฐานของคอมพิวเตอร์3.1 การทำงานขั้นพื้นฐานของคอมพิวเตอร์
3.1 การทำงานขั้นพื้นฐานของคอมพิวเตอร์รัสนา สิงหปรีชา
 
บทที่ 2 ข้อมูล สารสนเทศ และความรู้
บทที่ 2  ข้อมูล สารสนเทศ และความรู้บทที่ 2  ข้อมูล สารสนเทศ และความรู้
บทที่ 2 ข้อมูล สารสนเทศ และความรู้รัสนา สิงหปรีชา
 

More from รัสนา สิงหปรีชา (20)

บทที่ 6-การใช้งานเทคโนโลยีสารสนเทศอย่างมีความรับผิดชอบ
บทที่ 6-การใช้งานเทคโนโลยีสารสนเทศอย่างมีความรับผิดชอบบทที่ 6-การใช้งานเทคโนโลยีสารสนเทศอย่างมีความรับผิดชอบ
บทที่ 6-การใช้งานเทคโนโลยีสารสนเทศอย่างมีความรับผิดชอบ
 
บทที่ 1 เทคโนโลยีสมัยใหม่เอาลงบล๊อก
บทที่ 1 เทคโนโลยีสมัยใหม่เอาลงบล๊อกบทที่ 1 เทคโนโลยีสมัยใหม่เอาลงบล๊อก
บทที่ 1 เทคโนโลยีสมัยใหม่เอาลงบล๊อก
 
3.1 การทำงานขั้นพื้นฐานของคอมพิวเตอร์
3.1 การทำงานขั้นพื้นฐานของคอมพิวเตอร์3.1 การทำงานขั้นพื้นฐานของคอมพิวเตอร์
3.1 การทำงานขั้นพื้นฐานของคอมพิวเตอร์
 
3.1 การทำงานขั้นพื้นฐานของคอมพิวเตอร์
3.1 การทำงานขั้นพื้นฐานของคอมพิวเตอร์3.1 การทำงานขั้นพื้นฐานของคอมพิวเตอร์
3.1 การทำงานขั้นพื้นฐานของคอมพิวเตอร์
 
3.1 องค์ประกอบของคอมพิวเตอร์
3.1 องค์ประกอบของคอมพิวเตอร์3.1 องค์ประกอบของคอมพิวเตอร์
3.1 องค์ประกอบของคอมพิวเตอร์
 
บทที่ 2 ข้อมูล สารสนเทศ และความรู้
บทที่ 2  ข้อมูล สารสนเทศ และความรู้บทที่ 2  ข้อมูล สารสนเทศ และความรู้
บทที่ 2 ข้อมูล สารสนเทศ และความรู้
 
3.8 การทำงานแบบลำดับ
3.8 การทำงานแบบลำดับ3.8 การทำงานแบบลำดับ
3.8 การทำงานแบบลำดับ
 
3.8 การทำงานตามลำดับ
3.8 การทำงานตามลำดับ3.8 การทำงานตามลำดับ
3.8 การทำงานตามลำดับ
 
3.2 ตัวแปรและคำสงวน
3.2 ตัวแปรและคำสงวน3.2 ตัวแปรและคำสงวน
3.2 ตัวแปรและคำสงวน
 
คู่มือนักเรียน 3.1
คู่มือนักเรียน 3.1คู่มือนักเรียน 3.1
คู่มือนักเรียน 3.1
 
คู่มือครู
คู่มือครูคู่มือครู
คู่มือครู
 
3.1 โครงสร้างของภาษาซี
3.1 โครงสร้างของภาษาซี3.1 โครงสร้างของภาษาซี
3.1 โครงสร้างของภาษาซี
 
3.8 การทำงานตามลำดับ
3.8 การทำงานตามลำดับ3.8 การทำงานตามลำดับ
3.8 การทำงานตามลำดับ
 
3.7 การเขียนผังงาน
3.7 การเขียนผังงาน3.7 การเขียนผังงาน
3.7 การเขียนผังงาน
 
3.6 ฟังก์ชัน
3.6 ฟังก์ชัน3.6 ฟังก์ชัน
3.6 ฟังก์ชัน
 
3.5 การแสดงผลและการรับข้อมูล
3.5 การแสดงผลและการรับข้อมูล3.5 การแสดงผลและการรับข้อมูล
3.5 การแสดงผลและการรับข้อมูล
 
3.4 ตัวดำเนินการและนิพจน์
3.4 ตัวดำเนินการและนิพจน์3.4 ตัวดำเนินการและนิพจน์
3.4 ตัวดำเนินการและนิพจน์
 
3.1 โครงสร้างของภาษาซี
3.1 โครงสร้างของภาษาซี3.1 โครงสร้างของภาษาซี
3.1 โครงสร้างของภาษาซี
 
3.1 โครงสร้างของภาษาซี
3.1 โครงสร้างของภาษาซี3.1 โครงสร้างของภาษาซี
3.1 โครงสร้างของภาษาซี
 
3.2 ตัวแปรและคำสงวน
3.2 ตัวแปรและคำสงวน3.2 ตัวแปรและคำสงวน
3.2 ตัวแปรและคำสงวน
 

ชนิดของข้อมูล

  • 1.
  • 2. กำรประกำศตัวแปรควรเลือกใช้ชนิดข้อมูลที่เหมำะสม และตั้ง ชื่อตัวแปรตำมกฎในกำรตั้งชื่อเสมอ ซึ่งชนิดข้อมูลต่ำง ๆ ในภำษำ C มี ดังนี้ 1 Integer Type (ชนิดข้อมูลแบบจำนวนเต็ม) 2 Character Type (ชนิดข้อมูลแบบตัวอักษร) 3 String Type (ชนิดข้อมูลแบบข้อควำม) 4 Floating Type (ชนิดข้อมูลแบบจำนวนทศนิยม)
  • 3. 1 Integer Type (ชนิดข้อมูลแบบจำนวนเต็ม ) Integer เป็นชนิดข้อมูลแบบจำนวนเต็ม ประกอบไปด้วย จ ำนวนเต็ ม บวก จ ำนวนเต็ ม ลบ และจ ำนวนเต็ ม ศู น ย์ ซึ่ ง ใน ภำษำ C ได้แบ่งจำนวนเต็มออกเป็นชนิดต่ำง ๆ ซึ่งแต่ละชนิดมี ขนำดและขอบเขตของกำรใช้งำนที่แตกต่ำงกั น กำรเลือกใช้ จำนวนเต็มชนิดใดในกำรประกำศตัวแปรนั้นก็ขึ้นอยู่กับขนำดใน กำรจัดเก็บข้อมูลของตัวแปรนั้น ๆ
  • 4. 1 Integer Type (ชนิดข้อมูลแบบจำนวนเต็ม) ในข้อมูลชนิดเดียวกันของภำษำ C อำจจะมีควำมแตกต่ำงใน เรื่องของขนำดและขอบเขตชนิดข้อมูลได้ ซึ่งจะขึ้นอยู่กับระบบปฏิบัติกำร ที่ใช้งำน เช่น • ในระบบปฏิบัติกำร 16 บิต ข้อมูลชนิด int จะเป็น 16 บิต หรือ 2 ไบต์ • ในระบบปฏิบัติกำร 32 บิต ข้อมูลชนิด int จะเป็น 32 บิต หรือ 4 ไบต์
  • 5. ตำรำงแสดงขนำดและขอบเขตข้อมูล ชนิดข้อมูล Short int int กำรคิดเครืองหมำย ่ signed (คิดเครื่องหมำย) unsigned (ไม่คิดเครืองหมำย) ่ signed (คิดเครื่องหมำย) ขนำดไบต์ 2 4 unsigned (ไม่คิดเครืองหมำย) ่ Long int signed (คิดเครื่องหมำย) unsigned (ไม่คิดเครืองหมำย) ่ 4 ช่วงข้อมูล -32,768 ถึง 32,767 0 ถึง 65,535 -2,147,483,648 ถึง 2,147,483,647 0 ถึง 4,294,967,295 -2,147,483,648 ถึง 2,147,483,647 0 ถึง 4,294,967,295
  • 6. กำรกำหนดค่ำให้กับตัวแปรชนิดจำนวนเต็ม • จะต้องเป็นค่ำตัวเลขไม่มีจุดทศนิยม • ห้ำมใช้เครื่องหมำย , หรือช่องว่ำงคั่นระหว่ำงตัวเลข เช่น 1,234 ซึ่งถือว่ำผิด • กรณีเป็นค่ำบวกไม่จำเป็นต้องใส่เครื่องหมำย + นำหน้ำค่ำ แต่ กรณีเป็นค่ำลบต้องใส่เครื่องหมำย – นำหน้ำค่ำ • ช่วงตัวเลขจำนวนเต็มควรอยู่ในช่วงชนิดข้อมูลนั้น ๆ • สำมำรถใช้เครื่องหมำย suffix ต่อท้ำยค่ำที่กำหนดให้ตัวแปรได้ โดยใช้ L ต่อท้ำยชนิดข้อมูล long หรือใช้ U ต่อท้ำยค่ำเป็น unsigned (ใช้ตัวพิมพ์ใหญ่หรือเล็กควำมหมำยเหมือนกัน)
  • 7. 2 Character Type (ชนิดข้อมูลแบบตัวอักษร) Char เป็นชนิดข้อมูลแบบอักษรตัวเดียว มีขนำด 1 ไบต์ หรือ 8 บิต โดยจะกำหนดค่ำอยู่ในเครื่องหมำย ‘ ’ ซึ่งเป็นได้ทั้ง ตั ว อั ก ษร (Letter), ตั ว เลข (Digit) และสั ญ ลั ก ษณ์ พิ เ ศษ (Special Symbols) ลักษณะสำคัญของข้อมูลชนิดนี้คือ ไม่ สำมำรถนำไปคำนวณได้ ตัวอย่ำงเช่น ตัวอักษร ‘2’ แตกต่ำง จำกตัวเลข 2 ดังนั้น ‘2’ + 3 จึงไม่สำมำรถประมวลผลได้ในกำร เขียนโปรแกรมภำษำ C
  • 8. 3 String Type (ชนิดข้อมูลแบบตัวข้อควำม) ในควำมจริงนั้น ตัวแปรชนิดข้อควำมไม่มีกำรกำหนดไว้ใน ภำษำ C แต่เรำสำมำรถใช้ตัวแปรชนิดข้อควำมในรูปแบบของ ชุดตัวแปรอักขระได้โดยใช้เทคนิคในเรื่องของ Array เข้ำมำช่วย กำรก ำหนดค่ ำ ข้ อ ควำมให้ กั บ ตั ว แปรจะอยู่ ภ ำยใน เครื่องหมำย (“ ”) โดยในกำรสร้ำงต้องประกำศขนำด Array ไว้ล่วงหน้ำ เพื่อเป็นกำรจองพื้นที่สำหรับขนำดของข้อมูล เหนื่อย ก็ นัก พักก่อน
  • 9. 4 Floating Point Type (ชนิดข้อมูลแบบตัวจำนวนทศนิยม) Floating Point Type เป็นชนิดข้อมูลแบบตัวเลขทศนิยม ที่สำมำรถนำไปคำนวณทำงคณิตศำสตร์ได้ ซึ่งอำจจะมีจุด ทศนิ ย มหรื อ ไม่ มี จุ ด ทศนิ ย มก็ ไ ด้ โดยสำมำรถเขี ย นในรู ป ทศนิยมได้ ดังนี้ • เลขทศนิยม เช่น 12.568, -13.5 • เลขทศนิยมแบบยกกำลัง เช่น 2.004E+5, 4.10956E-25 ซึ่ง 2.004E+5 ก็คอ 2.004 x 105 ื ส่วน 4.10956E ก็คอ 4.10956 x 10-25 ื
  • 11. จุดสังเกตพบว่ำ ชนิดข้อมูลแบบทศนิยมจะเป็นแบบ signed (คิด เครื่องหมำย) เสมอ ซึ่งเรำสำมำรถกำหนดค่ำให้ตัวแปร โดยคำนึงถึง ข้อกำหนดดังนี้จะต้องเป็นค่ำตัวเลขที่สำมำรถมีจุดทศนิยมได้ • ห้ำมใช้เครื่องหมำย , หรือช่องว่ำงคั่นระหว่ำงตัวเลข เช่น 1,234.03 • กรณีเป็นค่ำบวกไม่จำเป็นต้องใส่เครื่องหมำย + นำหน้ำค่ำ แต่ใน กรณีเป็นค่ำลบต้องใส่เครื่องหมำย – นำหน้ำค่ำเสมอ • กำรเขียนในรูปแบบใช้ตัวอักษร E ค่ำที่ถูกกำหนดสำมำรถกำหนด ได้ทั้งค่ำบวกและค่ำลบ • สำมำรถใช้เครื่องหมำย suffix ต่อท้ำยค่ำที่กำหนดให้ตัวแปรได้ โดยใช้ L ต่อท้ำยชนิดข้อมูล long double หรือใช้ F ต่อท้ำยค่ำที่เป็น double (ใช้ตัวพิมพ์ใหญ่หรือเล็กควำมหมำยเหมือนกัน)
  • 12. ค่ำคงที่ (Constants) ค่ำคงที่ (Constants) คือ ค่ำข้อมูลชนิดใดชนิดหนึ่งที่ไม่มีกำรเปลี่ยนแปลงใน ขณะที่โปรแกรมทำงำน ตัวอย่ำงเช่น ค่ำ  ซึ่งมีค่ำเท่ำกับ 3.14 เป็นต้น ซึ่งใน ภำษำ C สำมำรถใช้งำนค่ำคงที่ได้ 3 รูปแบบดังนี้ 1. ระบุค่ำโดยตรง (Literal Constants) เป็นกำรกำหนด ค่ำคงที่เพื่อใช้งำนโดยตรง โดยไม่มีกำรกำหนดค่ำผ่ำนตัวแปร ใด ๆ ทั้งสิ้น ตัวอย่ำงเช่น ‘I’, “Love Thailand”, ‘007’ เป็นต้น 2. นิยำมโดย # (Defined Constants) เป็นกำรกำหนดค่ำคงที่ โดยกำรประกำศใช้งำนไว้ในส่วนของเฮดเดอร์ไฟล์ 3. เก็บไว้ในตัวแปร (Memory Constants) เป็นกำรกำหนด ค่ำคงที่ในรูปแบบของตัวแปร
  • 13. กฎของกำรแปลงชนิดของข้อมูล (Data Type Conversion) ในกำรเขียนโปรแกรมเพื่อกำหนดกำรทำงำนอย่ำงใดอย่ำงหนึ่ง บำครั้ง อำจมีชนิดข้อมูลต่ำง ๆ ในกำรประมวลผลมำกกว่ำ 1 ชนิด ดังนั้น ก่อน ประมวลผลข้อมูลก็ควรแปลงข้อมูลต่ำง ๆ ให้มีชนิดข้อมูลเดียวกันก่อน หลักในกำรแปลงชนิดของข้อมูล ซึ่งสำมำรถแปลงได้ 2 วิธีดงนี้ ั Implicit Type Conversion Explicit Type Conversion
  • 14. Implicit Type Conversion Implicit Type Conversion หลักกำรแปลงชนิดข้อมูลในวิธีนี้คือ คอมไพเลอร์จะทำหน้ำที่แปลง ชนิดข้อมูลของข้อมูลที่มีค่ำนัยสำคัญต่ำไปเป็นชนิดข้อมูลชนิดเดียวกันกับข้อมูล ที่มีค่ำนัยสำคัญสูงกว่ำในชุดคำสั่งนั้น ๆ โดยอัตโนมัติ สำหรับลำดับนัยสำคัญ Long double ของชนิดข้อมูล สำมำรถอธิบำยได้ ดังรูป double float unsigned long int long int unsigned int int short char ลำดับนัยสำคัญ (Signifiance)
  • 15. Explicit Type Conversion (Casting) เป็นกำรเปลี่ยนประเภทชนิดข้อมูลเป็นชนิดข้อมูลตำมที่เรำต้องกำร โดยใช้ Explicit Type Conversion (Casting) ซึ่งมีรูปแบบดังนี้ (DataType) ExpressionOrVariableName โดยที่ DataType คือ ชนิดข้อมูลปลำยทำง ExpressionOrVariableName คือ นิพจน์หรือตัวแปรที่ต้องกำร แปลงข้อมูล
  • 16. ที่มำ : คู่มืออบรมครูวิทยำศำสตร์ คณิตศำสตร์ คอมพิวเตอร์ โลก ดำรำศำสตร์ และอวกำศ ระดับมัธยมศึกษำตอนปลำย หนังสือเรียนรำยวิชำเพิ่มเติม กำรเขียนโปรแกรมเบื้องต้นด้วยภำษำ C บริษทซัคเซสมีเดีย คู่มือเรียนเขียนโปรแกรมภำษำ สำนักพิมพ์ IDC PREMIER