Basic Syntax
มาลอง Hello World กัน
เราจะเริ่มต้น program c++ สำหรับการพิมพ์ Hello World ในภาษา C++ เราสามารถใช้ code ต่อไปนี้ได้
#include <iostream>
int main() {
std::cout << "Hello World!";
return 0;
}
code ด้านบนจะพิมพ์ข้อความ "Hello World!" ออกทางหน้าจอ โดยบรรทัดแรกสุดมีการ import module เข้ามา ผ่านคำสั่ง #include
- คำสั่ง
#include
ในภาษา C++ คือคำสั่งที่ใช้ในการเรียกใช้ library หรือ module ที่เกี่ยวข้องกับโปรแกรม เช่น#include <iostream>
ใช้เรียกใช้โมดูลiostream
ที่ใช้สำหรับการทำงานกับการป้อนออกข้อมูลและการรับข้อมูลผ่านทางคอนโซล (console) - module
iostream
เป็นส่วนหนึ่งของภาษา C++ ที่ใช้สำหรับการทำงานกับการป้อนออกข้อมูล (output) และการรับข้อมูล (input) เข้ามาผ่านทาง console หรือทางอื่น ๆ เช่น ไฟล์ข้อมูล โดยมีคำสั่งคือcout
ซึ่งใช้สำหรับการแสดงผลข้อความออกทาง console - การใช้คำสั่ง
return 0
ในฟังก์ชันmain()
เป็นการแสดงว่าโปรแกรมสิ้นสุดการทำงาน และค่า 0 ที่ถูกส่งกลับจากฟังก์ชันmain()
จะบ่งบอกว่าโปรแกรมเสร็จสมบูรณ์และไม่มีข้อผิดพลาดที่เกิดขึ้น (เป็นเหมือนการส่ง status บอกไปยัง computer ว่าเรียบร้อย)
และนี่คือ code ที่เรียบง่ายที่สุดของภาษา C++ โดยวิธีการ run program นั้นให้เราทำการเปิด terminal บน VS Code ขึ้นมา หลังจากนั้นใช้คำสั่ง
# คำสั่งสำหรับการ compile
g++ <ชื่อไฟล์>
# ตัวอย่างเช่น (จะได้ default ออกมาเป็น a.out)
g++ test.cpp
# หากต้องการระบุชื่อไฟล์ compile ให้ใส่ -o เป็น option ออกมา
g++ test.cpp -o test
เมื่อมีการ compile ออกมาจะได้ไฟล์ output ออกมา (โดยปกติ default จะเป็น a.out
) หลังจากนั้นเมื่อเรามีการพิมพ์คำสั่งผ่าน command ด้วยชื่อไฟล์ออกมา
./a.out
ก็จะได้ผลลัพธ์ของ code ออกมาได้ลักษณะประมาณนี้
- สำหรับ mac หรือ linux ที่เป็น unix based จะได้เป็น Mach-O (Mach Object) format file ออกมา ที่สามารถใช้ชื่อไฟล์นั้น run program ออกมาได้เลย
- สำหรับ windows จะได้เป็น file .exe ออกมา ที่สามารถกดคลิกจากไฟล์ (เหมือนเปิด program ออกมา) หรือใช้
.\<ชื่อ file>.exe
ตามภาพ ออกมาได้เช่นกัน
มาลองรับ input / output กัน
พื้นฐานแรกสุด นอกเหนือจากการแสดงผลข้อความบนหน้าจอแล้ว terminal (หรือ command line interface - CLI) ยังสามารถรับข้อมูลจาก user ผ่าน input ใน CLI ได้เช่นเดียวกัน
#include <iostream>
using namespace std;
int main() {
int num;
cout << "กรุณาใส่ตัวเลข: ";
cin >> num;
cout << "ค่าที่รับมาคือ: " << num << endl;
return 0;
}
โปรแกรมด้านบนเป็นตัวอย่างโปรแกรม C++ ที่มีการรับ input และ output ออกมาผ่านทาง console หรือ command line โดยโปรแกรมจะขอให้ผู้ใช้ป้อนตัวเลข โดยใช้คำสั่ง cin
ในการรับค่าเข้ามา และจะแสดงผลลัพธ์ออกทาง console โดยใช้คำสั่ง cout
ในการแสดงผลลัพธ์ที่รับเข้ามา
คำสั่ง using namespace std;
ใช้ในการกำหนดขอบเขต (namespace) ที่ใช้งานในโปรแกรม C++ โดย std
คือชื่อของ namespace ที่ถูกใช้ในส่วนของ standard library ของภาษา C++ ซึ่งประกอบด้วย class และ function ที่ใช้กับ input และ output ตัวอย่างเช่น std::cout
และ std::cin
ที่ใช้สำหรับการแสดงผลและรับข้อมูลผ่านทาง console
เมื่อเราทำการ compile และรันโปรแกรม โดยใช้คำสั่ง
c++ test.cpp -o test
./test
โปรแกรมจะแสดงข้อความ "กรุณาใส่ตัวเลข: " เพื่อให้ผู้ใช้ป้อนตัวเลข และจะแสดงผลลัพธ์ของตัวเลขที่ผู้ใช้ป้อนเข้ามา
และนี่คือพื้นฐานการ run program 2 วิธีคือ
- run program โดยไม่มีการรอรับ input เข้ามา ผลลัพธ์ก็จะออกมาทันทีจากการ run program ได้เลย
- run program โดยมีการรอรับ input (จากคำสั่ง
cin
) โปรแกรมจะทำการรอ input จาก user ก่อนที่ program จะดำเนินการต่อ (และจะไม่มีการดำเนินการต่อจนกว่า user จะมีกา ร input เข้ามา)
หัวข้อต่อไป เราจะมาพูดถึงพื้นฐานของตัวแปร ซึ่งเป็นพื้นฐานแรกสุดของการเขียนโปรแกรม (ที่โปรแกรมตัวอย่างนี้ก็ใช้ไปเช่นกัน)