More Related Content
Similar to การเขียนโปรแกรมภาษาซี (20)
การเขียนโปรแกรมภาษาซี
- 1. การเขียนโปรแกรม
ภาษาซี
โดย
วิจักษณ์ ศรีสัจจะเลิศวาจา
ดุษฎี ประเสริฐธิติพงษ์
ภาควิชาวิทยาการคอมพิวเตอร์
คณะวิทยาศาสตร์ มหาวิทยาลัยเชียงใหม่
พฤษภาคม 2545
- 2. 1.แนะนำา ภาษาซี
Introduction to C Programming
Language
----------------------------------------
-------------------------------
ภาษาโปรแกรม (Programming Languages) ทีมีการคิดค้นขึ้นมา
่
ใช้กับคอมพิวเตอร์นั้นมีหลายพันภาษา แต่ภาษาที่เป็นที่รู้จักและเป็นที่
นิยมใช้ทั่วไปนั้นอาจจะมีเพียงหลายสิบภาษา เช่น โคบอล (COBOL)
ปาสคาล (Pascal) เดลไฟล์ (Delphi) วิชวลเบสิก (Visual Basic) ซี (C)
จาวา (Java) เป็นต้น ซึ่งแต่ละภาษา สร้างขึ้น ด้วยวัตถุประสงค์ที่แตก
ต่างกันและมีจุดเด่นของภาษาที่ต่างกัน ภาษาซี C Programming
Language) เป็นภาษาเชิงโครงสร้างที่มีการออกแบบโปรแกรมใน
ลักษณะโมดูลทีมีจุดเด่นในเรื่องของประสิทธิภาพการ ทำา งานที่เร็ว มี
่
ความยืดหยุ่นในการเขียนโปรแกรมสูง
เนื่องจากมีผู้ผลิตคอมไพเลอร์เพื่อใช้แปลภาษาซีหลายบริษัท
ตัวอย่างต่าง ๆ ทีนำาเสนอในหนังสือเล่มนี้ เป็นตัวอย่างทีนำาเสนอโดยใช้
่ ่
คอมไพเลอร์ของ Turbo C เวอร์ชัน 3.0 ของบริษัทบอร์ดแลนด์ โดย
พยายามเขียนใน รูปแบบที่เป็นมาตรฐานหากผู้อ่านนำา ไปใช้กับคอมไพ
เลอร์ของบริษัทอื่นจะได้มีการปรับแก้ไม่มากนัก เพื่อให้ผู้อ่านได้เห็นภาพ
การพัฒนาโปรแกรมเชิงโครงสร้างอย่างชัดเจน
1. ประวัติความเป็นมา
ภาษาซีได้รับการพัฒนาขึ้นโดยเดนนิสริทชี (Dennis Ritchie) ขณะ
ทีทำา งานอยู่ที่เบลแล็บบอราทอรี(Bell Laboratories) โดยพัฒนาขึ้นจาก
่
หลักการพื้นฐานของภาษาบี (B) และซี พี แอล (BCPL) ในช่วงปี
ค.ศ.1971 ถึง 1973 แต่ได้เพิ่มชนิดข้อมูลและความสามารถอื่น ๆ ให้มาก
ขึ้น และนำา ภาษาซีไปใช้พัฒนาระบบปฏิบัติการยูนิกซ (UNIX) บน
เครื่องคอมพิวเตอร์ DEC PDP-11 ภาษาซีเป็นที่นิยมใช้อย่างแพร่หลาย
ในช่วงต้นทศวรรษที1980 จนกระทั่งมีความพยายามกำาหนดมาตรฐาน
่
ของภาษาเพื่อให้สามารถใช้ภาษาซีได้บนเครื่องคอมพิวเตอร์ใด ๆ ในปี
ค.ศ. 1983 โดย ANSI (The American National Standards Institute)
ได้ตั้งคณะกรรมการ X3J11 เพื่อร่างมาตรฐานดังกล่าว และได้รับการ
ตรวจสอบและยอมรับโดย ANSI และ ISO (The International
- 3. Standards Organization) โดยมีการตีพีมพ์มาตรฐานของภาษาซีในปี
ค.ศ. 1990 จากความมีประสิทธิภาพและสามารถทำางานบนเครื่อง
คอมพิวเตอร์ใด ๆ ของภาษาซีจึงได้มีการนำา ภาษาซีไปใช้ในการพัฒนา
ระบบปฏิบัติการต่าง ๆ และใช้เป็นต้นแบบของภาษาอื่น ๆ ทีสำาคัญใน
่
ปัจจุบัน เช่น ซีพลัสพลัส (C++) จาวา (Java) เป็นต้น
2. รูปแบบโปรแกรมภาษาซี
ในการเขียนภาษาโปรแกรม ผู้เขียนโปรแกรมจะต้องศึกษารูปแบบ
พื้นฐานของภาษา และไวยากรณ์ของภาษานั้น รูปแบบพื้นฐานของภาษา
จะเขียนโปรแกรมในลักษณะของโมดูลคือมีการแบ่งออกเป็นส่วนย่อย ๆ
ที่เรียกว่า ฟังก์ชัน (Function) แสดงดังตัวอย่างที่ 1.1 และรูปที่ 1.1
ตัวอย่างที่ 1.1 แสดงตัวอย่างโปรแกรมภาษาซีเบื้องต้น
#include <stdio.h>
void main( ) {
/* Display message to standard output */
printf(“My first program.”);
}
ผลการทำา งานของโปรแกรม
My first program.
ระวัง - การพิมพ์ตัวอักษรตัวพิมพ์ใหญ่และตัวพิมพ์เล็กต่างกัน จะ
ทำา ให้เกิดความผิดพลาด
- ตรวจสอบว่ามีการพิมพ์ข้อความต่าง ๆ เหมือนกับตัวอย่าง
- 4. รูปที่ 1.1 แสดงส่วนประกอบของโปรแกรมภาษาซีเบื้องต้น
ส่วนประกอบที่ 1 ส่วนหัว (Header) จะเป็นส่วนที่อยูที่ตอนต้น
่
ของโปรแกรม โดยอยู่นอกส่วนที่
เรียกกว่าฟังก์ชัน ทีส่วนนหัวของโปรแกรมจะประกอบด้วยคำา สั่งที่
เป็นการกำาหนดค่าหรือกำาหนดตัวแปรต่าง ๆ คำาสั่งในที่ขึ้นต้นด้วย
สัญลักษณ์ # เป็นคำา สั่งที่เรียกว่า ตัวประมวลผลก่อน (Preprocessor)
คือคำา สั่งที่จะได้รับการทำาก่อนที่จะมีการคอมไพล์โปรแกรม ตัวประมวล
ผลก่อน ที่สำาคัญของภาษาซีแบ่งออกเป็น 2 ประเภทดังนี้
• # include
ในภาษาซีจะมีฟังก์ชันมาตรฐานที่ผู้ผลิตคอมไพเลอร์ได้จัด
เตรียมไว้ให้ ซึ่งมักจะเกี่ยวข้อง
กับการรับข้อมูล การแสดงผลข้อมูล การคำานวณ และอื่น ๆ ซึ่งผู้
เขียนโปรแกรมสามารถ
เรียกใช้งานได้ทันที โดยไม่ต้องเขียนโปรแกรมแกรมเอง ใน
ตัวอย่างจะมีการใช้คำา สั่ง
printf( ) ซึ่งเป็นคำา สั่งที่ใช้แสดงข้อความออกทางอุปกรณ์
แสดงผลมาตรฐาน เช่น จอภาพ
คำาสั่ง printf( ) เป็นการเรียกใช้ฟังก์ชันมาตรฐานซึ่งอยู่ในกลุมที่
่
เรียกว่า Standard Input
and Output เมื่อจะเรียกใช้ฟังก์ชันใดในกลุมดังกล่าว จะต้อง
่
บอกให้คอมไพเลอร์ไปอ่าน
ค่าที่อยูในอินคลูชไฟล์ที่ชื่อ stdio.h มาไว้ที่ส่วนต้นของ
่
โปรแกรม โดยใช้คำา สั่ง
#include <stdio.h>
เพราะฉะนั้นผู้เขียนโปรแกรมควรจะศึกษาฟังก์ชันมาตรฐานที่
คอมไพเลอร์แต่ละบริษัทได้
- 5. เตรียมไว้ให้วาคำา สั่งใดใช้คู่กับอินคลูชไฟล์ใด
่
• # define
ใช้สำา หรับการกำาหนดค่าคงที่ ตัวอย่างเช่น
#define YES 1
คำาสั่งดังกล่าวเป็นการกำาหนดว่า หากทีใดในโปรแกรมมีคำา ว่า
่
YES จะถูกแทนที่ด้วยค่าทาง
ขวามือ ในที่นี้คือ 1
นอกจากในสว่นหัวของโปรแกรมอาจจะมีการประกาศตัวแปร
และส่วนของการประกาศโปรโตไทปไว้ที่ส่วนหัวของโปรแกรมได้อีกด้วย
ซึ่งจะกล่าวถึงในบทต่อ ๆ ไป
ศึกษารายละเอียดเพิ่มเติม หรือต้องการ Down load เนื้อหาฉบับสมบูรณ์
ได้ที่นhttp://pittajarn.lpru.ac.th/~nukit/c/CProgrammingV2.pdf
ี่