ตัวอย่าง คอม ไพ เลอ ร์ ที่ใช้ในภาษา C

ปกติเราจะใช้งานคอมพิวเตอร์ในโหมด GUI หรือ Graphic User Interface ก็คือโหมดที่แสดงผลแบบกราฟิกสวยๆ แต่ในบทนี้เราจะมาลองใช้งานคอมพิวเตอร์แบบมาตราฐานดั้งเดิมกัน

Manual: คอมไพล์เองผ่าน command line

ไม่ว่าเราจะเขียนโปรแกรมด้วยภาษาอะไรก็ตาม การคอมไพล์และรันโปรแกรมแบบมาตราฐานคือการสั่งคำสั่งผ่าน cmd

ตัวอย่าง คอม ไพ เลอ ร์ ที่ใช้ในภาษา C

ซึ่งการใช้ command-line นั้นค่อนข้างยากสำหรับมือใหม่ที่เคยใช้แต่เมาส์แน่นอน เพราะต้องใช้การพิมพ์คำสั่งทั้งหมด

สำหรับฝั่ง Windows นั้นส่วนใหญ่จะมีโปรแกรมติดตั้งมากับเครื่องให้อยู่แล้ว นั่นคือโปรแกรมที่ชื่อว่า "Command Prompt" หรือถ้าเครื่องไหนมีโปรแกรมชื่อ "PowerShell" ก็ใช้แทนกันได้เช่นกัน

ตัวอย่าง คอม ไพ เลอ ร์ ที่ใช้ในภาษา C

ส่วนฝั่งผู้ใช้ Mac นั้นจะมีแอพพลิเคชันชื่อ "Terminal" ติดตั้งมาให้แล้วเช่นกัน หรือใครจะติดแอพที่ชื่อ "iTerm2" เพิ่มเองก็ย่อมได้

ตัวอย่าง คอม ไพ เลอ ร์ ที่ใช้ในภาษา C

แต่เมื่อเราไม่ได้ใช้งานผ่าน 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
0 เช่น

cd /User/Ta/playground/c/first

จากนั้นเราจะใช้คำสั่ง touch ในการสร้างไฟล์ใหม่ขึ้นมา เช่น

touch main.c

ตัวอย่าง คอม ไพ เลอ ร์ ที่ใช้ในภาษา C

ส่วนการเขียนภาษา C นั้นเราสามารถใช้ Text Editor ตัวไหนก็ได้ เปิดไฟล์ขึ้นมาแล้วพิมพ์โค้ดลงไปซะ (ในเคสนี้ใช้ Nodepad)

ตัวอย่าง คอม ไพ เลอ ร์ ที่ใช้ในภาษา C

แล้วก็เซฟไฟล์ซะ

หลังจากนั้นเราจะทำการคอมไพล์ไฟล์โปรแกรมของเราด้วยคำสั่ง

gcc -o output sourcecode

โดย sourcecode คือชื่อไฟล์ที่เราเขียนโค้ดลงไป ส่วน output คือชื่อไฟล์โปรแกรมที่เราอยากได้ เช่น

gcc -o MyProgram main.c

หลังจากสั่งคำสั่งเสร็จแล้ว ผลที่ได้คือเราจะได้ไฟล์ execution file ที่สามารถรันได้มา 1 ไฟล์

แล้วเราก็สามารถสั่งรันไฟล์โปรแกรมของเราได้ด้วยการพิมพ์ชื่อโปรแกรมตรงๆ เลย (โดยไม่ต้องพิมพ์

cd /User/Ta/playground/c/first
1 ต่อท้ายนะ) เช่น

.\MyProgram

cd /User/Ta/playground/c/first
2 ที่นำหน้านั้นหมายถึงโฟลเดอร์ปัจจุบันนะ

และอย่าลืมว่าใน Mac ต้องพิมพ์ว่า

./MyProgram

ตัวอย่าง คอม ไพ เลอ ร์ ที่ใช้ในภาษา C

output ของโปรแกรมของเราก็จะแสดงออกมาหน้าจอตรงนั้นเลย


Text Editor ที่น่าใช้

เอาตรงๆ เลยว่าการจะพิมพ์โค้ดเนี่ย ใช้อะไรก็ได้แม้แต่ Notepad แต่ก็นะ จิตใจแข็งแกร่งขนาดจะใช้ Notepad พิมพ์โค้ดเป็นร้อยๆ บรรทัดไหวมั้ย? ไม่น่านะ ดังนั้นเราจะแนะนำ Text Editor หรือโปรแกรมพิมพ์โค้ดที่น่าใช้แทนกันดีกว่า

Visual Studio Code

ตัวอย่าง คอม ไพ เลอ ร์ ที่ใช้ในภาษา C

หรือ VS Code ตัวนี้เป็นโปรแกรมคนละตัวกับ Visual Studio นะ (Visual Studio เป็น IDE ส่วน VS Code เป็นแค่ Text Editor)

หลังจากที่ Microsoft คิดว่ามีคนไม่ชอบใช้ Visual Studio เพราะขนาดของโปรแกรมที่ใหญ่มากรึเปล่า ก็ปรับแผนไปสร้าง Text Editor แบบ light-weight แทน ซึ่งจัดว่ามาถูกทางมาก เพราะ VS Code มีคนชอบและใช้งานเยอะมากเนื่องจากมันสามรถลง Extension เพิ่มความสามารถได้ตามใจชอบ แถมมีหน้า console หรือ terminal ภายในโปรแกรมอีกตั้งหาก

Atom

ตัวอย่าง คอม ไพ เลอ ร์ ที่ใช้ในภาษา C

Text Editor ที่ใช้เทคโนโลยีแบบเว็บ (Electron Framework) ในการสร้าง โดย Github.com ถือว่าเป็น Text Editor ที่ light-weight สุดๆ ตัวหนึ่ง เปิดโปรแกรมได้เร็วมาก แบบไม่กินสเป็กเครื่องเลย

Sublime Text

ตัวอย่าง คอม ไพ เลอ ร์ ที่ใช้ในภาษา C

เป็น Text Editor ที่ฟีเจอร์ค่อนข้างเยอะ ติดตั้งปลั๊กอินเพิ่มได้ ตัวโปรแกรมไม่ฟรี เราสามารถใช้มันได้เรื่อยๆ แต่มันมักจะมี dialog เด้งขึ้นมาถามว่าจะซื้อมั้ยอยู่เรื่อยๆ จนน่ารำคาณ (ไม่งั้นก็ซื้อสิ)


แต่อยากที่รู้ การใช้งาน IDE แบบในบทที่แล้วนั้นใช้งานง่ายกว่า แต่การใช้งาน cmd ก็เป็นสิ่งที่โปรแกรมเมอร์ควรจะใช้งานเป็น