โครงสร้าง ภาษาซี
ขั้นตอนการแปลงภาษาแอสเซมบลีเป็นภาษาเครื่อง โปรแกรมภาษา ในการเขียนโปรแกรมคอมพิวเตอร์ ด้วยภาษาระดับต่ำหรือระดับสูง จะต้องเปลี่ยนภาษานั้นให้เป็นภาษาเครื่อง เพื่อให้เครื่องคอมพิวเตอร์ทำงานได้ โปรแกรมต้นฉบับ (Source Program) โปรแกรมที่เครื่องทำงานได้ (Executable Program) การเขียนโปรแกรมด้วยแอสเซมบลี (ภาษาระดับต่ำ) เป็นภาษาเครื่อง ขั้นตอนการแปลงภาษาแอสเซมบลีเป็นภาษาเครื่อง
ขั้นตอนการแปลภาษาโปรแกรม โปรแกรมภาษา การเขียนโปรแกรมด้วยภาษาระดับสูงเป็นภาษาเครื่อง อินเทอร์พรีเตอร์ (Interpreter) คอมไพเลอร์ (Compiler) ขั้นตอนการแปลภาษาโปรแกรม
ขั้นตอนพัฒนาโปรแกรม การเขียนโปรแกรมคอมพิวเตอร์ให้ทำงานได้ตามเราต้องการ ผู้เขียนโปรแกรมจะต้องรู้ว่าจะให้โปรแกรมทำอะไร มีข้อมูลอะไร และต้องการอะไรจากโปรแกรม รวมทั้งรูปแบบการแสดงผลด้วย โดยทั่วไปจะมีขั้นตอนการพัฒนาโปรแกรม ดังนี้ การกำหนดและวิเคราะห์ปัญหา การพัฒนาอัลกอริทึม การเขียนโปรแกรม การทดสอบโปรแกรม เขียนเอกสารและบำรุงรักษาโปรแกรม
ประวัติภาษาซี ภาษาซีพัฒนาขึ้นมาในปี 1972 โดย Dennis Ritchie แห่ง Bell Telephone Laboratories, Inc. (ปัจจุบันคือ AT&T Bell Laboratories) ต้นกำเนิดมาจากภาษา 2 ภาษา คือ ภาษา BCPL และ ภาษา B ในกลางปี 1980 ภาษาซีก็กลายเป็นภาษาที่ได้รับความนิยม
คุณสมบัติของภาษาซี ภาษาที่เป็นโครงสร้าง เข้าใจง่าย มีความยืดหยุ่น มีส่วนขยายเป็นคำหลัก (keyword) ในภาษาอังกฤษ เช่น if, else, for, do และ while ที่มีความใกล้เคียงกับ ภาษามนุษย์ สามารถใช้กับงานด้านโปรแกรมระบบ (system programming) เช่น เขียนโปรแกรมระบบปฏิบัติการ (operating system) หรือใช้กับงานทั่ว ๆ ไป สามารถย้ายไปทำงานในเครื่องอื่นได้
โครงสร้างโปรแกรมภาษาซี 1. ส่วนหัวของโปรแกรม (Header file) #include <stdio.h> เป็นส่วนหัวหรือส่วนที่เรียกโมดูลอื่นๆ เข้ามาทำงานร่วม โดยโมดูลเหล่านี้จะบรรจุคำสั่งหรือข้อกำหนดต่างๆ ที่จะใช้ในการเขียนโปรแกรม เช่น โมดูล <stdio.h> ถ้าไม่มีโมดูลนี้ไม่สามารถใช้งานคำสั่งที่ใช้ในการแสดงผลได้
การใช้ #include #include <ชื่อไฟล์> หรือ #include “ชื่อไฟล์” ตัวอย่าง #include <stdio.h> (เป็นการเรียกใช้ไฟล์ stdio.h เข้ามาในโปรแกรมหากไม่มีไฟล์นี้ไม่สามารถเรียกใช้งานคำสั่ง printf ได้ )
โครงสร้างโปรแกรมภาษาซี 2. ส่วนของคำสั่งหลัก (Main function) main() { statements; } ส่วนนี้ทุกโปรแกรมจะต้องมี ซึ่งภายในฟังก์ชันหลักจะประกอบด้วยคำสั่งต่างๆ ที่จะให้โปรแกรมทำงาน ฟังก์ชันนี้เริ่มต้นการทำงานด้วยฟังก์ชัน main() ส่วนคำสั่งต่างๆ จะต้องเขียนอยู่ระหว่างเครื่องหมาย { และ } เสมอ และคำสั่ง ทุกคำสั่งในภาษาซีจะต้องปิดท้ายด้วยเครื่องหมาย ; (semicolon) เสมอ
ฟังก์ชันหลักของโปรแกรม (Main Function) ตัวอย่าง #include<stdio.h> main() { printf(“Hello, Good morning.\n”); } ผลการทำงาน Hello, Good morning.
printf(“control หรือ format string”, variable list ); เป็นคำสั่งที่ใช้ในการแสดงผลออกทางจอภาพ โดยมีรูปแบบการใช้งานดังนี้ printf(“control หรือ format string”, variable list ); control หรือ format string เป็นส่วนที่ใส่ข้อความที่จะแสดงผล และส่วนควบคุมลักษณะการแสดงผล รวมทั้งบอกตำแหน่งที่ตัวแปรจะแสดงผล variable list เป็นตัวแปรที่ต้องการจะแสดงผล ในกรณีที่ต้องการแสดงข้อความ ไม่จำเป็นต้องมีส่วนนี้
ตัวอย่างโปรแกรมภาษาซี
อธิบายโปรแกรม บรรทัดที่ 1: เป็นส่วนที่เป็นหมายเหตุแบบบรรทัดเดียวของโปรแกรม เพื่อให้ทราบชื่อโปรแกรมว่า MyFirstProgram.c บรรทัดที่ 3: เป็นการบอกให้คอมไพเลอร์นำเฮดเดอร์ไฟล์ชื่อ stdio.h เข้ามา ร่วมในการแปลผลด้วย โดย stdio ย่อมาจาก standard input/output และ .h คือ นามสกุลของเฮดเดอร์ไฟล์ในภาษาซี (h ย่อมาจาก header) บรรทัดที่ 5: คือฟังก์ชัน main() ซึ่งเป็นฟังก์ชันหลักของโปรแกรม การทำงานของโปรแกรมภาษาซีจะเริ่มต้นที่ฟังก์ชันนี้ บรรทัดที่ 6: เครื่องหมาย { ระบุจุดเริ่มต้นของฟังก์ชัน main() บรรทัดที่ 7: เป็นคำสั่งให้เคลียร์หน้าจอเวลาแสดงผลลัพธ์ บรรทัดที่ 8: เป็นการเรียกใช้ฟังก์ชัน printf() ซึ่งเป็นฟังก์ชันมาตรฐานของภาษาซีทำหน้าที่แสดงผลข้อมูลออกทางจอภาพ ในที่นี้จะแสดงข้อความ Hello World ! ออกทางจอภาพ บรรทัดที่ 9: เป็นการเรียกใช้ฟังก์ชัน getch() ซึ่งเป็นฟังก์ชันมาตรฐานของภาษาซีทำหน้าที่รับตัวอักษรใด เพื่อออกจากหน้าจอปัจจุบัน บรรทัดที่ 10: เครื่องหมาย } ระบุจุดสิ้นสุดของฟังก์ชัน main()