บทที่ 11. ตัวชี้ (Pointer)

01 ก.ย 2558 | By attapong

      ตัวชี้หรือ pointer จะถูกเก็บไว้ในสแตกซึ่งใช้ในการเก็บตำแหน่งหน่วยความจำของ ตัวแปร อาร์เรย์ และสิ่งต่าง ๆ ภายในโปรแกรม อาจกล่าวได้ว่าตัวชี้เป็นการสร้างชนิดข้อมูลที่สามารถชี้ไปยังตำแหน่งหน่วยความจำที่ต้องการได้ซึ่งมีประโยชน์เมื่อไม่ทราบว่าจะต้องจองหน่วยความจำเป็นจำนวนเท่าใดแต่สิ่งหนึ่งที่ต้องจำไว้คือการใช้หน่วยความจำจะถูกควบคุมโดยระบบปฏิบัติการดังนั้นหากมีการใช้งานที่ผิดพลาดจะเกิดการแจ้งเตือนจากระบบปฏิบัติการเสมอ

Read More...| 0 Comments

บทที่ 10. อาร์เรย์ (Array)

11 ส.ค 2558 | By attapong

จากความรู้ที่ผ่านมาจะเห็นได้ว่าเราจะใช้ตัวแปรในการเก็บหรือพักค่าที่ต้องการ เช่น int a = 5, b= 2; เป็นต้น จะเป็นอย่างไรหากเราต้องการเขียนโปรแกรมเพื่อเก็บค่า 100 ค่า ด้วยเหตุผลนี้จึงทำให้มีการนำเอาอาร์เรย์มาใช้งาน

      อาร์เรย์เป็นตัวแปรชนิดหนึ่งที่ใช้ในการเก็บข้อมูลแบบเป็นชุด และข้อมูลที่อยู่ในอาร์เรย์ต้องเป็นข้อมูลประเภทเดียวกันโดยใช้การอ้างอิงผ่านชื่อตัวแปรเพียงชื่อเดียวโดยสามารถเลือกใช้งานแต่ละค่าที่อยู่ในอาร์เรย์ได้ผ่านทางหมายเลขระบุลำดับในอาร์เรย์

Read More...| 0 Comments

บทที่ 9. ฟังก์ชันและเทคนิคการใช้งาน

15 ก.ค 2558 | By attapong

      จากบทที่ผ่านมาเราได้ทำความเข้าใจถึงฟังก์ชันที่มีใน C และ C++ ไปบ้างแล้ว สำหรับเนื้อหาที่จะกล่าวถึงต่อไปนี้เป็นเบื้องหลังการทำงานของฟังก์ชันภายในโปรแกรม และลักษณะการทำงานของฟังก์ชันที่ได้เพิ่มเติมเข้ามาใน C++ จากส่วนของภาษา C เดิม

Read More...| 0 Comments

บทที่ 8. ไลบรารีและฟังก์ชันพื้นฐานใน C/C++

14 มิ.ย 2558 | By attapong

      ฟังก์ชัน (Function) จะถือว่าเป็นโปรแกรมย่อย (Sub program) ถูกสร้างขึ้นมาเพื่อลดความซับซ้อน ทำให้โปรแกรมมีใน C และ C++ เราสามารถแบ่งฟังก์ชันได้ออกเป็นสองลักษณะได้แก่

  • ฟังก์ชันมาตรฐานของตัวภาษาเอง โดยมีการเรียกใช้จากไลบรารีพื้นฐานของ C และ C++ เช่นคำสั่ง printf(), rand(), pow(), sqrt() เป็นต้น
  • ฟังก์ชันที่โปรแกรมเมอร์เขียนขึ้นมาใช้งานเองซึ่งเป็นการรวมกลุ่มกันของคำสั่งพื้นฐานต่าง ๆ ของ C++ มาประกอบขึ้นใหม่เพื่อให้ทำงานอย่างใดอย่างหนึ่ง โดยเฉพาะอย่างยิ่งหากงานนั้นมีการเรียกใช้งานซ้ำมากกว่าหนึ่งครั้ง ซึ่งฟังก์ชัน main() ก็ถือเป็นฟังก์ชันประเภทนี้ด้วยเช่นกัน
Read More...| 0 Comments

บทที่ 7. การทำงานแบบวนรอบภายในโปรแกรม

05 พ.ค 2558 | By attapong

      ในบางครั้งเราจำเป็นต้องการให้โปรแกรมทำงานเดิมซ้ำหลาย ๆ ครั้ง ตัวอย่าง เช่น การเขียนโปรแกรมหาค่า factorial ของตัวเลขที่รับเข้ามา เช่น  5! = 5x4x.x2x1 จากตัวอย่างนี้จะเห็นได้ว่าความรู้ที่ผ่านมาไม่เพียงพอต่อการคำนวณหาค่าในลักษณะนี้ ดังนั้นในที่นี้เราจะพูดถึงการเขียนโปรแกรมเพื่อวนรอบการทำงานซ้ำ ซึ่งมีกลุ่มคำสั่งที่เกี่ยวข้องด้วยกันหลายคำสั่ง โดยมีหลักการร่วมกันดังต่อไปนี้

  • ต้องกำหนดค่าเริ่มต้นในการวนรอบ
  • อาจจะมีการเพิ่มหรือลดค่าของตัววนรอบในบางกรณี
  • ต้องมีเงื่อนไขที่ทำให้หลุดจากการวนรอบ ไม่เช่นนั้นการทำงานของโปรแกรมจะกลายเป็นลูปอนันต์ (Infinity loop) ไป
Read More...| 0 Comments

บทที่ 6. การสร้างการตัดสินใจภายในโปรแกรม

11 เม.ย 2558 | By attapong

      การทำงานของคอมพิวเตอร์บางครั้งจำเป็นต้องอาศัยเงื่อนไขเพื่อใช้ในการตัดสินใจของโปรแกรม ในการตัดสินใจนั้นอาจมีทางเลือกมากกว่าหนึ่งทางเลือกเพื่อตัดสินใจว่าควรจะใช้ทางเลือกใด โดยยึดตามเงื่อนไขที่โปรแกรมเมอร์ผู้สร้างโปรแกรมนั้นได้กำหนดไว้

Read More...| 0 Comments

บทที่ 5. การจัดการอินพุตและเอาท์พุตมาตรฐาน

19 มี.ค 2558 | By attapong

      ใน C++ การจัดการอินพุตและเอาท์พุตนั้นจะอาศัยหลักการของสตรีม (stream) หรือกระแสข้อมูลเป็นองค์ประกอบในการทำงาน สตรีมหมายถึงกระแสข้อมูลที่อยู่ในลักษณะลำดับของข้อมูลอาจจะเป็นตัวอักษร ข้อมูลตัวเลข หรือค่าไบนารี่ก็ได้ โดยจะมีตัวบอกลำดับของข้อมูลและประเภทของข้อมูลว่าเป็นข้อมูลที่เป็นการไหลเข้าไปในสตรีมหรือข้อมูลที่บอกจุดสิ้นสุดของสตรีม การใช้งานสตรีมทำให้โปรแกรมเมอร์ไม่จำเป็นต้องรู้ว่าเบื้องหลังการทำงานของฮาร์ดแวร์ที่จัดการกับข้อมูลนั้นมีเบื้องหลังการทำงานอย่างไร หน้าที่ของโปรแกรมเมอร์มีเพียงแค่จับข้อมูลใส่เข้าไปในสตรีมโดยระบุถึงต้อนทางและปลายทางเท่านั้น หลังจากนั้นสตรีมจะทำหน้าที่ในการอ่าน เขียน และส่งข้อมูลระหว่างกันเองโดยอัตโนมัติ

Read More...| 0 Comments

บทที่ 4. ตัวดำเนินการใน C++

15 ก.พ 2558 | By attapong

      C++ Operator หรือตัวดำเนินการ ในตอนนี้เราได้รู้จักตัวแปรและค่าคงที่แล้ว ซึ่งสามารถนำมาใช้งานผ่านตัวกระทำการทางคณิตศาสตร์ +, -, *, / และ % ได้ดังที่ได้กล่าวไว้แล้วในเนื้อหาก่อนหน้า

Read More...| 0 Comments

บทที่ 3. ค่าคงที่ (Constants)

12 ม.ค 2558 | By attapong

ความแตกต่างระหว่างตัวแปรและค่าคงที่ได้แก่ ตัวแปรสามารถเปลี่ยนค่าไปมาในส่วนใดของโค้ดก็ได้ ในขณะที่ค่าคงที่หากถูกกำหนดค่าไว้แล้วจะไม่สามารถกำหนดค่าใหม่ได้ ค่าคงที่มีประโยชน์ในการเขียนโปรแกรมอย่างมาก ตัวอย่างเช่นการกำหนดค่าคงที่แทนค่าของ Pi ซึ่งมีค่าโดยประมาณ 3.14159 คงไม่สะดวกแน่หากต้องพิมพ์ค่าตัวเลขนี้ลงไปทุกครั้งที่มีการอ้างถึง ดังนั้นใน C และ C++ จึงได้นำเสนอการประกาศค่าคงที่ขึ้นมาใช้งาน โดยผู้ใช้งานต้องทำการนิยามและประกาศชื่อของตัวแทนค่าเหล่านั้น

Read More...| 0 Comments

บทที่ 2. ตัวแปรและประเภทข้อมูล

05 ธ.ค 2557 | By attapong

      เนื่องจากข้อมูลที่อยู่ภายในหน่วยความจำของคอมพิวเตอร์จะมีลักษณะเป็นตัวเลขฐานสอง (0 และ 1) ในแต่ละเซลล์ของหน่วยความจำซึ่งมีขนาด 1 บิต หากรวมกลุ่มเซลล์นี้เป็นจำนวน 8 บิต จะถูกเรียกว่า 1 ไบต์ เซลล์แต่ละเซลล์จะถูกเข้าถึงด้วยซีพียูเพื่อใส่หรือดึงข้อมูลออกมาใช้งาน ซึ่งซีพียูจะไม่เข้าถึงข้อมูลคราวละบิต แต่จะเข้าถึงขนาดข้อมูลในหน่วยความขนาดหนึ่งไบต์เป็นอย่างต่ำ โดยยึดตามตัวระบบปฏิบัติการและซีพียูตัวอย่าง เช่น หากเป็นระบบปฏิบัติการแบบ 32 บิต หมายความว่าในหนึ่งครั้งที่ซีพียูเข้าถึงหน่วยความจำ ซีพียูจะเข้าไปจัดการกับข้อมูลคราวละ 32 บิตนั่นเอง

Read More...| 0 Comments

บทที่ 1. เริ่มต้นกับ C++

17 พ.ย 2557 | By attapong

         โปรแกรมที่ถูกเขียนด้วย C++ (ซีพลัสพลัส) ภายในจะมีลักษณะเป็นข้อความคำสั่งที่เรียกว่า "statement" เพื่อบอกคอมพิวเตอร์ให้ทำงานตามที่ผู้เขียนโปรแกรมต้องการ ภายในหนึ่งโปรแกรมที่ถูกสร้างขึ้นจะประกอบไปด้วยชุดของข้อความคำสั่งจำนวนมากและกลุ่มของชุดคำสั่งที่กล่าวมานั้นมักจะถูกเรียกกันว่า ซอร์สโค้ด หรือ โค้ด

      ลักษณะของคำสั่งที่ใช้จะมีทั้งฟังก์ชัน (function) หรือคำสำคัญ (keyword) ที่เป็นองค์ประกอบพื้นฐานของภาษา C++ ในขณะที่ฟังก์ชั่นถูกสร้างขึ้นมาเพื่อง่ายในการเรียกใช้งานจากหลายๆ ส่วนของโปรแกรม โดยทุกๆ โปรแกรมที่เขียนขึ้นด้วย C++ จะต้องมีฟังก์ชัน main เสมอ ซึ่งจะเป็นฟังก์ชันแรกที่ถูกเรียกใช้เมื่อโปรแกรมเริ่มทำงาน และจากภายในฟังก์ชัน main นี้เรายังสามารถเรียกใช้ฟังก์ชันหรือคำสั่งอื่นๆ ได้ต่อไปเรื่อยๆ

Read More...| 0 Comments

C++ Compilers

06 ส.ค 2557 | By attapong

คอมไพเลอร์ (Compiler) หมายถึงโปรแกรมที่ทำหน้าที่ในการแปลภาษาหนึ่งซึ่งเป็นภาษาระดับสูง ไปยังอีกภาษาหนึ่งซึ่งเป็นภาษาระดับต่ำ 

      ภาษาระดับสูงได้แก่ภาษาที่มีลักษณะของวยากรณ์ของตัวภาษาคล้ายกับรูปประโยคในภาษาอังกฤษ เช่น C, C++, basic, Visual Basic, pascal และ Delphi เป็นต้น

      ภาษาระดับต่ำหมายถึงภาษาที่ไม่สามารถทำความเข้าใจได้จากวยากรณ์ของตัวภาษาด้วยมนุษย์ตัวอย่าง เช่น Assembly และ ภาษาเครื่อง (machine language) ซึ่งเหมาะกับการนำไปใช้งานในการติดต่อกับฮาร์ดแวร์โดยตรง เนื่องจากมีขนาดที่เล็กและมีความเร็วในการทำงานสูงกว่า

Read More...| 0 Comments

การใช้งาน Visual Studio สำหรับ C++

05 มี.ค 2557 | By attapong

      Visual studio เป็นเครื่องมือที่ใช้ในการพัฒนาซอฟต์แวร์จากไมโครซอฟต์ซึ่งมีเครื่องมือที่เพียบพร้อมแต่ใช้งานได้บนระบบปฏิบัติการวินโดวส์เท่านั้น สามารถรองรับภาษาที่ใช้ในการเขียนโปรแกรมได้หลายภาษา เช่น Visual Basic, Visual C++, C# เป็นต้น ในบทความนี้จะนำเสนอการใช้งาน Visual Studio สำหรับเขียนโปรแกรมด้วย C++ ในระดับเริ่มต้น

Read More...| 0 Comments