การเขียนโค้ดภาษา C ในเบื้องต้น

การเขียนโปรแกรมภาษา C ขั้นพื้นฐาน

ประวัติโดยย่อของภาษา C

    ภาษา C ได้รับการออกแบบและพัฒนาขึ้นโดย Dennis Ritchie เมื่อปีค.ศ. 1972 ณ ห้องปฏิบัติการเบลล์ (Bell Laboratory) โดยออกแบบเพื่อใช้งานบนระบบปฏิบัติการ Unixบนเครื่องเมนเฟรมคอมพิวเตอร์ DEC PDP-11ในความเป็นจริงภาษา C ได้สืบสานมาจากภาษา B ที่พัฒนาขึ้นโดย Ken Thompson ซึ่งภาษา B นี้ตั้งอยู่บนภาษา BCPL ซึ่งพัฒนาโดย Martin Richards
 
                    ในยุคแรกภาษา C ได้ถูกกำหนดมาตรฐานที่สร้างขึ้นเองในกลุ่มคณะ De Facto Standard ซึ่งเป็นเวอร์ชั่นที่นำมาใช้งานบนเครื่อง Unix System V จนกระทั่งปี ค.ศ. 1978 Brian Kernighan และ Dennis  Ritchie ได้เสนองานเขียน "The C Programming Language" จัดพิมพ์โดยสำนักพิมพ์ Prentice-Hall   ประเทศหรัฐอเมริกา
                    ในช่วงแรกมาตรฐานภาษา C ในบางส่วนถูกกำหนดไว้คลุมเครือ ไม่ชัดเจนนัก ส่งผลให้ผู้ผลิตคอม   ไพล์นำมาตีความหมายแตกต่างกันไป จนกระทั่งในราวปี ค.ศ. 1983 ทางสถาบัน ANSI (American National Institute)เข้ามาแก้ไขปัญหานี้ ด้วยการนำภาษา C มาบรรจุไว้เป็นมาตรฐานที่รับรองโดย ANSIจึงเป็นที่มาของ ANSI C ในที่สุด และในปี ค.ศ. 1988 นี้เอง Brian Kernighan และ Dennis Ritchie ก็ได้มีการปรับปรุงหนังสืกที่เขาเขียนอีกครั้งซึ่งเป็นฉบับ Second Edition ภายใต้ชื่อว่า "The C Programming Language"โดยมีการประทับคำว่า "ANSI C "ลงไปด้วย

                   ต่อมาในปี ค.ศ. 1990 นี้เองทาง ANSI ได้กำหนดมาตรฐานของภาษา C เสร็จสมบูรณ์ เพื่อให้ผู้พัฒนาคอมไพล์เลอร์ทั้งหลายนำไปสร้างคอมไพล์เลอร์มาตรฐาน แต่อย่างไรก็ตามคอมไพล์เลอร์ที่ถูกพัฒนาขึ้นมาโดยส่วนใหญ่แล้ว มักมิได้พัฒนาตามมาตรฐาน ANSI อย่างเคร่งครัดเสียที่เดียว

                   ถึงแม้นว่าปัจจุบันภาษา C ได้ถูกนำไปต่อยอดและพัฒนาปรับปรุงให้มีประสิทธิภาพยิ่งขึ้น ในเรื่องของชุดคำสั่งที่สนับสนุนการโปรแกรมเชิงวัตถุ (Object-Oriented Programming) ไม่ว่าจะเป็นBorland C++ หรือ MS-Visual C++ ก็ตาม แต่ทั้งนี้มาตรฐานชุดคำสั่งของ ANSI C ส่วนใหญ่แล้วจะสามารถนำมาใช้งานร่วมกันได้อย่างไม่มีปัญหา


องค์ประกอบของการเขียนโค้ดภาษา C ในเบื้องต้น

     โปรแกรมที่พัฒนาด้วยภาษา C ทุกโปรแกรมจะมีโครงสร้างที่ประกอบด้วย 5 ส่วน หลัก ๆ ดังนี้

1. ส่วนเฮดเดอร์ไฟล์ (Header File of Processing Directive) ส่วนนี้จะมีจุดสังเกตคือ มีเครื่องหมาย # เสมอ
คอมไพล์เลอร์จะทำงานกับส่วนนี้เป็นส่วนแรก ส่วนเฮดเดอร์ไฟล์เป็นส่วนที่เก็บไลบรารีมาตรฐานของภาษา C
จะถูกดึงเข้ามารวมกับโปรแกรมในขณะที่กำลังคอมไพล์ คำสั่ง #include สามารถเขียนได้ 2 รูปแบบ คือ

 

รูปแบบที่ 1

รูปแบบที่ 2

การเขียนโปรแกรมภาษา C เฮดเดอร์ไฟล์ที่เก็บไลบรารีมาตรฐานในการจัดการเกี่ยวกับอินพุตและเอาต์พุต ของโปรแกรมก็คือ Stdio.h
ซึ่งถือว่าเป็นส่วนสำคัญที่ขาดไม่ได้
                         stdio.h เป็นเฮดเดอร์ที่เกี่ยวข้องกับฟังชั่นอินพุตและเอาต์พุต Input and Output) เช่น ฟังก์ชั่น printf( ) , scanf ( )
                               
                        conio.h เป็นเฮดเดอร์ที่เกี่ยวกับฟังก์ชั่น รอรับคำสั่ง เช่น getch ( )
         
2. ส่วนของตัวแปร (Global declarations statement) เป็นส่วนประกาศตัวแปรที่ใช้ร่วมกันทั้งโปรแกรม ส่วนนี้จะมีหรือไม่มีก็ได้
ตัวอย่าง

3. ส่วนของฟังก์ชันหลัก (Function main) ฟังก์ชันนี้เริ่มต้นการทำงานด้วยฟังก์ชัน main() 
โดยขอบเขตของฟังก์ชันจะเริ่มต้นด้วยเครื่องหมาย { และสิ้นสุดด้วยเครื่องหมาย } คือ การทำงานของฟังก์ชั่นจะ

เริ่มต้นที่เครื่องหมาย { และจะสิ้นสุดที่เครื่องหมาย } ฟังก์ชั่น main() สามารถเขียนในรูปแบบของ void main(void) ก็ได้

 

4. ส่วนฟังก์ชันที่กำหนดเอง (User-defined function เป็นส่วนประกาศตัวแปรที่สามารถใช้ได้เฉพาะภายในฟังก์ชันของตนเองเท่านั้น
โดยต้องอยู่ในเครื่องหมาย { } สามารถเรียกใช้ได้ภายในโปรแกรม แนวคิดของฟังก์ชันก็คือนำโค้ดกลับมาใช้ใหม่
โดยที่ไม่ต้องเขียนโปรแกรมใหม่ทั้งหมด ก่อนที่เราจะใช้ฟังก์ชันมันจำเป็นต้องถูกประกาศก่อน
 
5. ส่วนของตัวโปรแกรม( Program) เป็นส่วนคำสั่งของการทำงานของโปรแกรมโดยที่คําสั่งในแต่ละคำสั่งต้องจบด้วยเครื่องหมาย ;
(เซมิโคลอน) เสมอ

การอธิบายโปรแกรม (Program Comment)
           การคอมเมนต์ (comment) เป็นหมายเหตุของโปรแกรม มีไว้เพื่อให้ผู้เขียนโปรแกรมใส่ข้อความอธิบายกำกับลงไปใน source code
ซึ่งคอมไพเลอร์จะไม่ทำการแปลผลในส่วนที่เป็นคอมเมนต์นี้
 

 คอมเมนต์ในภาษาซีมี 2 แบบคือ

  1. คอมเมนต์แบบบรรทัดเดียว ใช้เครื่องหมาย //
  2. คอมเมนต์แบบหลายบรรทัด ใช้เครื่องหมาย /* และ */

 

อ้างอิง

https://sites.google.com/a/atsamat.ac.th/krudit/basic-c/history-of-c

https://www.kruja.club/502.html



                   

ความคิดเห็น