Page 1

[ใบคววามรู้ที่ 4 เรื่อง ประวัติและะหลักการภาษษาซี] การโปรแกรมเบื ้องต้ น  

1. ประวัตั ภิ าษาซี ภาษาซี (C Language) L เป็ป็ นภาษาหนึ่งสําหรับเขียนโปรแกรมคออมพิวเตอร์ พัฒ ฒนาโดย นายยเดน นิส ริ ทชี่ (Dennis Riitche) ในปี ค.ศ. ค 1972 Tuurbo c/c++ Version V 3.0 เป็ เ นโปรแกรมมเขียนภาษา C โดย บอร์แลนนด์ ซอฟต์แวร์ คอร์ปอเรชัชัน่ (Borland Software Corrporation)

2. ขั้นตออนการพัฒนาาโปรแกรมภาษษาซี ขั้นตอนทีที่ 1 เขียนโปรรแกรม (sourcce code) ใช้editor เขียนโปรแกรมภภาษาซีและทําการบั า นทึกไฟฟล์ให้มีนามสสกุลเป็ น .c เช่ช่น work.c เป็ นต้ นน editor คือ โปรแกรมทีที่ใช้สาํ หรับกาารเขียนโปรแแกรม โดยตัวอย่ อ างของ edittor ที่นิยมนํามมาใช้ในการเขีขียน โปรแกรมได้แก่ Codeeblock, Noteppad, Edit ของง Dos ,TextPaad และ EditPPlus เป็ นต้น ผูเ้ ขียนโปรแกกรม สามารถเเลือกใช้โปรแแกรมใดในกาารเรี ยนโปรแกกรมก็ได้ แล้วแต่ ว ความถนัดของแต่ ด ละบุคคล ขั้นตอนทีที่ 2 คอมไพล์ล์โปรแกรม (coompile) นํา source coode จากขั้นตออนที่1 มาทําการคอมไพล์ ก เพื เ ่อแปลจากภภาษาซีที่มนุษษย์เข้าใจไปเป็ น ภาษาเครืรื่ องที่คอมพิวเตอร์ เ เข้าใจได้ด้ ในขั้นตอนนีนี้คอมไพเลอรร์จะทําการตรรวจสอบ sourrce code ว่าเกิด ข้อผิดพลลาดหรื อไม่  หากกเกิดข้อผิดพลลาด จะแจ้งให้ห้ผเู ้ ขียนโปรแแกรมทราบ ผูเ้ ขียนโปรแกรรมจะต้องกลับไป บ แก้ไขโปรแกรมแ ไ และทําการคออมไพล์โปรแกกรมใหม่อีกครั้ง  หากกไม่พบข้อผิดพลาด คอมไพพเลอร์จะแปลลไฟล์ source code จากภาษษาซีไปเป็ น ภาษษาเครื่ อง (ไฟลล์นามสกุล .obbj) เช่นถ้าไฟลล์source codee ชื่อ work.c ก็จะถูกแปลไปเป็ น ไฟล์ล์ work.obj ซึ่งเก็ ง บภาษาเครืรื่ องไว้เป็ นต้น

1 | P a g e    


[ใบความรู้ที่ 4 เรื่อง ประวัติและหลักการภาษาซี] การโปรแกรมเบื ้องต้ น  

compile เป็ นตัวแปลภาษารู ปแบบหนึ่ง มีหน้าที่หลักคือการแปลภาษาโปรแกรมที่มนุษย์เขียนขึ้นไป เป็ นภาษาเครื่ อง โดยคอมไพเลอร์ของภาษาซี คือ C Compiler ซึ่งหลักการที่คอมไพเลอร์ใช้ เรี ยกว่า คอมไพล์ (compile) โดยจะทําการอ่านโปรแกรมภาษาซีท้ งั หมดตั้งแต่ตน้ จนจบ แล้วทําการแปลผลทีเดียว นอกจากคอมไพเลอร์แล้ว ยังมีตวั แปลภาษาอีกรู ปแบบหนึ่งที่เรี ยกว่า อินเตอร์ พรีเตอร์ การอ่านและ แปลโปรแกรมทีละบรรทัด เมื่อแปลผลบรรทัดหนึ่งเสร็ จก็จะทํางานตามคําสัง่ ในบรรทัดนั้น แล้วจึงทําการ แปลผลตามคําสัง่ ในบรรทัดถัดไป หลักการที่อินเตอร์พรี เตอร์ใช้เรี ยกว่า อินเตอร์ เพรต (interpreter) ข้ อดีและข้ อเสี ยของตัวแปลภาษาทั้งสองแบบมีดังนี้ ตัวแปลภาษา 

 คอมไพเลอร์

 อินเตอร์ พรีเตอร์

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

ข้ อเสี ย  เมื่อเกิดข้อผิดพลาด ขึ้นกับโปรแกรมจะ ตรวจสอบหา ข้อผิดพลาดได้ยาก เพราะทําการแปลผล ทีเดียวทั้งโปรแกรม

 ช้า เนื่องจากที่ทาํ งานที ละบรรทัด

2 | P a g e    


[ใบความรู้ที่ 4 เรื่อง ประวัติและหลักการภาษาซี] การโปรแกรมเบื ้องต้ น  

3. การคอมไพล์ และลิงค์ โปรแกรมในภาษาซี การสร้างโปรแกรมที่สามารถใช้งานได้ข้ ึนมาโปรแกรมหนึ่ง ในภาษาซีมีข้ นั ตอนดังนี้ 1. สร้างตัวโปรแกรมที่เป็ นตัวอักษร หรื อเรี ยกว่า ซอร์ สไฟล์ (Source file) โดยมีนามสกุลเป็ น .c หรื อ .cpp ขึ้นมาก่อน โดยใช้โปรแกรมที่สามารถเขียนไฟล์ที่เก็บอักขระ (Editor) ใดๆ ก็ได้ อักษร หรื อ อัก ขระใดๆ นั้น จะต้อ งอยู่ใ นรู ป แบบของการโปรแกรมภาษา (ขั้น ตอนนี้ คื อ การสร้ า ง โปรแกรมที่เป็ นภาษามนุษย์นนั่ เอง) 2. คอมไพล์เลอร์ของภาษาซี (C Compiler) จะทําการแปลงซอร์สไฟล์ จากอักขระใดๆ ให้เป็ นรหัสที่ เครื่ องคอมพิวเตอร์ สามารถเข้าใจได้เก็บไว้ในอีกไฟล์หนึ่งเรี ยกว่าไฟล์วตั ถุประสงค์ (Object file) ที่มีนามสกุล .obj (ขั้นตอนนี้ เรี ยกว่า การคอมไพล์ เป็ นการแปลงภาษามนุ ษย์เป็ นภาษาเครื่ อง นัน่ เอง) 3. ตัวเชื่อม (Linker) จะทําการตรวจสอบว่าในโปรแกรมที่เขียนขึ้นนั้น มีการเรี ยกใช้งานฟั งก์ชนั มาตรฐานใด จากห้องสมุดของภาษาซี (C Library) บ้างหรื อไม่ ถ้ามี ตัวเชื่อมจะทําการรวมเอา ฟั งก์ชนั เหล่านั้นเข้ากับไฟล์วตั ถุประสงค์ แล้วจะได้ไฟล์ที่สามารถทํางานได้ โดยมีนามสกุลเป็ น .exe (ขั้นตอนนี้เรี ยกว่า การลิงค์ เป็ นการรวมฟังก์ชนั สําเร็ จรู ปเข้าไป แล้วสร้างไฟล์ที่ทาํ งานได้)

3 | P a g e    


[ใบความรู้ที่ 4 เรื่อง ประวัติและหลักการภาษาซี] การโปรแกรมเบื ้องต้ น  

ตัวอย่ าง 1. สร้างซอร์สไฟล์ที่มีขอ้ ความ ที่เก็บโปรแกรมภาษาซี ดังนี้ #include <stdio.h> 

main() { 

printf(“Hello World”);  } 

แล้วเก็บไว้ในไฟล์ชื่อ test.c 2. ใช้คาํ สัง่ เพื่อเรี ยกให้คอมไพล์เลอร์ของภาษาซีทาํ งาน โดยคอมไพล์เลอร์จะทําการแปลงอักขระ จากซอร์สไฟล์ ให้เป็ นรหัสที่คอมพิวเตอร์สามารถเข้าใจได้ จะได้ไฟล์ชื่อ test.obj 3. ใช้คาํ สัง่ เพื่อเรี ยกให้ตวั เชื่อมของภาษาซีทาํ งาน ตัวเชื่อมจะทําการรวมไฟล์หอ้ งสมุดที่ชื่อ stdio.h เข้ามา (ตามข้อความ #include …) แล้วสร้างไฟล์ที่สามารถทํางานได้ชื่อ test.exe **หมายเหตุ คําว่า printf ในตัวโปรแกรม คือฟั งก์ชนั มาตรฐานหนึ่ งที่พิมพ์ขอ้ ความออกทาง หน้าจอ โดยขั้นตอนและวิธีการทํางานของฟังก์ชนั printf จะอยูใ่ นไฟล์หอ้ งสมุดชื่อ stdio.h ผลทีเ่ กิดจากการรั นโปรแกรม จะได้ ข้อความบนหน้ าจอว่ า Hello World คําอธิบาย - #include <stdio.h> คือบอกคอมไพล์เลอร์ให้นาํ ไฟล์ stdio.h มารวมด้วย - main คือชื่อของฟังก์ชนั หลัก โปรแกรมจะเริ่ มทํางานที่นี่และเมื่อจบฟังก์ชนั main หมายถึงจบ โปรแกรมด้วย - printf(Hello World) คือการใช้ฟังก์ชนั printf พิมพ์ขอ้ ความที่อยูใ่ นเครื่ องหมาย   ออกทาง อุปกรณ์เอาท์พทุ มาตรฐาน **ข้อสังเกต ทุกประโยคภาษาซี (C Statement) จะต้องมีเครื่ องหมาย ; ปิ ดท้าย

4 | P a g e    

ประวัติและหลักการภาษาซี ใบความรู้ที่ 4  
Read more
Read more
Similar to
Popular now
Just for you