บทความอื่นๆ ในชุดของ C Programming
- [ชีทรวมสรุปการเขียนโปรแกรมภาษา C - First Edition]
- ตอนที่ 1 Intro to C แนะนำภาษาซี
- ตอนที่ 2 Tools โปรแกรมสำหรับการเขียนภาษาซี (1) - IDE
- ตอนที่ 3 Tools โปรแกรมสำหรับการเขียนภาษาซี (2) - คอมไพล์เองด้วย cmd
- ตอนที่ 4 Variable (1) - ตัวแปรคืออะไร และ การคำนวณในภาษา C ทำยังไง
- ตอนที่ 5 Output แสดงผลลัพธ์ด้วย printf ในภาษาซี
- ตอนที่ 6 Variable (2) - ชนิดของตัวแปรประเภทต่างๆ
- ตอนที่ 7 Input - การรับค่าจากผู้ใช้เข้ามาในโปรแกรม
- ตอนที่ 8 Expression - การสร้างสมการเพื่อคำนวณค่าคำตอบออกมา
ปกติเราจะใช้งานคอมพิวเตอร์ในโหมด GUI หรือ Graphic User Interface ก็คือโหมดที่แสดงผลแบบกราฟิกสวยๆ แต่ในบทนี้เราจะมาลองใช้งานคอมพิวเตอร์แบบมาตราฐานดั้งเดิมกัน
Manual: คอมไพล์เองผ่าน command line
ไม่ว่าเราจะเขียนโปรแกรมด้วยภาษาอะไรก็ตาม การคอมไพล์และรันโปรแกรมแบบมาตราฐานคือการสั่งคำสั่งผ่าน cmd
ซึ่งการใช้ command-line นั้นค่อนข้างยากสำหรับมือใหม่ที่เคยใช้แต่เมาส์แน่นอน เพราะต้องใช้การพิมพ์คำสั่งทั้งหมด
สำหรับฝั่ง Windows นั้นส่วนใหญ่จะมีโปรแกรมติดตั้งมากับเครื่องให้อยู่แล้ว นั่นคือโปรแกรมที่ชื่อว่า "Command Prompt" หรือถ้าเครื่องไหนมีโปรแกรมชื่อ "PowerShell" ก็ใช้แทนกันได้เช่นกัน
ส่วนฝั่งผู้ใช้ Mac นั้นจะมีแอพพลิเคชันชื่อ "Terminal" ติดตั้งมาให้แล้วเช่นกัน หรือใครจะติดแอพที่ชื่อ "iTerm2" เพิ่มเองก็ย่อมได้
แต่เมื่อเราไม่ได้ใช้งานผ่าน IDE ทำให้เราต้องติดตั้ง Compiler หรือตัวแปลภาษาเองด้วย
คอมไพเลอร์ภาษา C มีอยู่หลายตัว สมัยก่อนเราจะใช้พวก Turbo C หรือ Borland C แต่สำหรับตอนนี้ขอแนะนำให้ใช้ gcc
แทน ซึ่งในระบบปฏิบัติการอื่นนอกจาก Linux มักจะไม่มีการติดตั้ง gcc มาให้
สำหรับ Windows
ใน Windows ถ้าเราไม่ใช้งาน Dev C++ หรือ Visual Studio เราก็จำเป็นต้องโหลดคอมไพเลอร์มาติดตั้งเอง
คอมไพเลอร์ที่ใช้งานได้จะเป็นชุดพัฒนา Linux Environment หรือจำลองระบบให้เหมือน Linux นั่นเอง ตัวที่แนะนำคือ
- MinGW (http://www.mingw.org/)
- Cygwin (https://www.cygwin.com/)
ใช้ตัวไหนก็ได้ เลือกมาติดตั้งซักตัว แต่ถ้าเลือกไม่ถูกเราแนะนำ MinGW ดีกว่า เพราะติดตั้งง่ายกว่า
สำหรับ Mac
ใน Mac ให้ติดตั้ง Xcode (แม้ว่าเราจะไม่ต้องการใช้งานในโหมด IDE ยังไงเราก็ต้องการ Xcode อยู่ดี)
How to วิธีเขียนและคอมไพล์ภาษา C ด้วย cmd แบบรวบรัด
*หมายเหตุ เราจะไม่เจาะลึกวิธีใช้ cmd มากนัก แต่จะโฟกัสไปที่การใช้งานคอมไพล์ภาษา C
ขั้นแรกของการใช้ cmd คือเราต้องทำการเปลี่ยน directory ไปยังโฟลเดอร์ที่เราอยู่ในตอนนี้ก่อน เช่น ถ้าเราต้องการเซฟไฟล์ไว้ที่
E:\playground\c\first
เราจะต้องสั่งเปลี่ยน directory ด้วยคำสั่ง cd
(change directory) ซะก่อน
cd E:\playground\c\first
ซึ่งสำหรับ Windows จะใช้ \
ในการระบุ directory นะ ส่วนใน Mac กับ Linux จะใช้ /
เช่น
cd /User/Ta/playground/c/first
จากนั้นเราจะใช้คำสั่ง touch ในการสร้างไฟล์ใหม่ขึ้นมา เช่น
touch main.c
ส่วนการเขียนภาษา C นั้นเราสามารถใช้ Text Editor ตัวไหนก็ได้ เปิดไฟล์ขึ้นมาแล้วพิมพ์โค้ดลงไปซะ (ในเคสนี้ใช้ Nodepad)
แล้วก็เซฟไฟล์ซะ
หลังจากนั้นเราจะทำการคอมไพล์ไฟล์โปรแกรมของเราด้วยคำสั่ง
gcc -o output sourcecode
โดย sourcecode คือชื่อไฟล์ที่เราเขียนโค้ดลงไป ส่วน output คือชื่อไฟล์โปรแกรมที่เราอยากได้ เช่น
gcc -o MyProgram main.c
หลังจากสั่งคำสั่งเสร็จแล้ว ผลที่ได้คือเราจะได้ไฟล์ execution file ที่สามารถรันได้มา 1 ไฟล์
แล้วเราก็สามารถสั่งรันไฟล์โปรแกรมของเราได้ด้วยการพิมพ์ชื่อโปรแกรมตรงๆ เลย (โดยไม่ต้องพิมพ์ .exe
ต่อท้ายนะ) เช่น
.\MyProgram
.
ที่นำหน้านั้นหมายถึงโฟลเดอร์ปัจจุบันนะ
และอย่าลืมว่าใน Mac ต้องพิมพ์ว่า
./MyProgram
output ของโปรแกรมของเราก็จะแสดงออกมาหน้าจอตรงนั้นเลย
Text Editor ที่น่าใช้
เอาตรงๆ เลยว่าการจะพิมพ์โค้ดเนี่ย ใช้อะไรก็ได้แม้แต่ Notepad แต่ก็นะ จิตใจแข็งแกร่งขนาดจะใช้ Notepad พิมพ์โค้ดเป็นร้อยๆ บรรทัดไหวมั้ย? ไม่น่านะ ดังนั้นเราจะแนะนำ Text Editor หรือโปรแกรมพิมพ์โค้ดที่น่าใช้แทนกันดีกว่า
Visual Studio Code
หรือ VS Code ตัวนี้เป็นโปรแกรมคนละตัวกับ Visual Studio นะ (Visual Studio เป็น IDE ส่วน VS Code เป็นแค่ Text Editor)
หลังจากที่ Microsoft คิดว่ามีคนไม่ชอบใช้ Visual Studio เพราะขนาดของโปรแกรมที่ใหญ่มากรึเปล่า ก็ปรับแผนไปสร้าง Text Editor แบบ light-weight แทน ซึ่งจัดว่ามาถูกทางมาก เพราะ VS Code มีคนชอบและใช้งานเยอะมากเนื่องจากมันสามรถลง Extension เพิ่มความสามารถได้ตามใจชอบ แถมมีหน้า console หรือ terminal ภายในโปรแกรมอีกตั้งหาก
Atom
Text Editor ที่ใช้เทคโนโลยีแบบเว็บ (Electron Framework) ในการสร้าง โดย Github.com ถือว่าเป็น Text Editor ที่ light-weight สุดๆ ตัวหนึ่ง เปิดโปรแกรมได้เร็วมาก แบบไม่กินสเป็กเครื่องเลย
Sublime Text
เป็น Text Editor ที่ฟีเจอร์ค่อนข้างเยอะ ติดตั้งปลั๊กอินเพิ่มได้ ตัวโปรแกรมไม่ฟรี เราสามารถใช้มันได้เรื่อยๆ แต่มันมักจะมี dialog เด้งขึ้นมาถามว่าจะซื้อมั้ยอยู่เรื่อยๆ จนน่ารำคาณ (ไม่งั้นก็ซื้อสิ)
แต่อยากที่รู้ การใช้งาน IDE แบบในบทที่แล้วนั้นใช้งานง่ายกว่า แต่การใช้งาน cmd ก็เป็นสิ่งที่โปรแกรมเมอร์ควรจะใช้งานเป็น
ดังนั้นจะใช้งาน IDE เป็นหลักก็ได้ แต่ควรจะรู้วิธีการสั่งงานใน cmd ไว้ด้วยก็ดีนะ
ในบทต่อไปเราจะมาเริ่มลงรายละเอียดการเขียนภาษา C กันต่อ