ข่าว IT ล่าสุด
ถูกใจอย่าลืม Like Fanpage
Listen 1 : ข้อควรรู้ของภาษา C
แสดงแล้ว 13522 ครั้ง /
สิงหาคม 18, 2009, 08:11:41

Moshi

ออฟไลน์
กระทู้ : 16,996
คะแนนขอบคุณ : 45
it4x สังคมแห่งการเรียนรู้
ข้อควรรู้ของภาษา C

C is case Sensitive. หมายความถึง ว่าในภาษา C นั้น อักษรตัวใหญ่ กับตัวเล็ก มีความหมายที่แตกต่างกัน คือ เราสามารถใช้ A เป็นตัวแปร ซึ่งจะเป็นตัวแปรคนละตัวกับ a
Every Statement is definited by a semicolon หมายความว่าทุกข้อความที่เป็นคำสั่งในภาษา C นั้นจะลงท้ายด้วยเครื่องหมาย semicolon ( ; )

ตัวอย่างของโปรแกรม
#include
/* This is my first program. */
main()
{
       clrscr();
       printf("Hello,world n");
       printf("Press any key to stop n");
       getch();
} /*end of main*/


จากตัวอย่างข้างต้นเราสามารถอธิบายได้หลายอย่าง
       ให้สังเกต ณ บรรทัดแรกที่เขียนว่า #include บรรทัดนี้กำลังจะบอกเราว่าให้เรานั้นไปเอาไฟล์ที่มีสกุล .h นั้นมาเป็นส่วนหนึ่งของโปรแกรมเรา ซึ่งส่วนนี้ในทุกโปรแกรมจะต้องมี ส่วนไฟล์ที่เราไปเอามานั้นคือ header file ที่มีชื่อว่า stdio.h ถ้าจะจำกันให้ง่ายนั้นมันย่อมาจาก standard Input Output คือเป็นไฟล์ที่ใช้จัดการกับการ รับค่า และ แสดงค่าของโปรแกรม จากโครงสร้างในส่วนต้นนี้คือก่อนที่จะถึงตรงส่วนของคำว่า main() เราจะเรียกส่วนนี้ว่า Preprocessor
       บรรทัดถัดมาเขียนว่า /*........*/ ในส่วนนี้เราเรียกว่าส่วนของการ comment คือให้เราเขียนข้อความอะไรก็ได้ลงไปซึ่ง อาจจะเป็นการอธิบายโปรแกรมเป็นต้น ในที่นี้เราเขียนว่า This is my first program คือเป็นการบอกว่านี่คือโปรแกรมแรกของฉัน
       บรรทัดถัดมาเขียนว่า main() ข้อความนี้เขียนเพื่อบอกให้รู้ว่าหลังจากคำนี้จะมีเครื่องหมาย { และจะจบด้วยเครื่องหมาย } ข้อความหรือคำสั่งที่อยู่ระหว่างเครื่องหมาย { และ } ทั้งหมดนั้นเป็นคำสั่งที่ใช้ในส่วนของ main โปรแกรม
      ในทุกโปรแกรมจะต้องมีส่วนของ main ปรากฎอยู่เพราะเมื่อเราสั่ง compile โปรแกรม ตัว compile จะทำการวิ่งไปหา main ทุกครั้งเสมอ
       C a collection of functions one of which must be main() function คำกล่าวนี้บอกเราว่า การโปรแกรม C ประกอบไปด้วย function ซึ่ง function หนึ่งที่จะต้องมี ก็คือ ฟังก์ชัน main()
       ตอนนี้เราได้เข้ามาสู่ main() เรียบร้อยแล้ว บรรทัดแรกใน main function คือ clrscr(); สังเกตได้ว่าข้อความนี้จบลงด้วย เครื่องหมาย semicolon แสดงว่าข้อความนี้เป็นคำสั่ง และขอบอกไว้เลยว่าคำสั่ง clrscr(); นี้คือ คำสั่ง clear screen นั่นเองคือ เมื่อ โปรแกรมได้ run มาถึงส่วนนี้และได้ทำคำสั่งนี้หน้าจอที่ปรากฎจะถูก clear เพื่อรอทำคำสั่งต่อไป
       คำสั่งถัดมาคือ print("....ข้อความ..... n"); ความจริงแล้วคำสั่ง printf(อ่านว่า พริ้นซ์-เอฟ) มีอยู่หลายรูปแบบแต่เดี๋ยวเราค่อยๆดู กันไปก่อนในแบบแรกนี้คือว่า คำสั่งนี้จะทำการพิ่มพ์ ข้อความที่ปรากฎอยู่ระหว่างเครื่องหมาย " และ " ออกมาบนหน้าจอในที่นี้จะ พิมพ์คำว่า Hello,world ปรากฎขึ้นบนหน้าจอ ส่วนเครื่องหมาย n ที่ปรากฎอยู่นั่นเป็นเครื่องหมาย tab ซึ่งมีอยู่หลายรูปแบบ เช่นเดียวกันในที่นี้ n หมายความว่า หลังจากพิมพ์ข้อความแล้วให้ cursor ย้ายไปขึ้นบรรทัดใหม่
       บรรทัดถัดมาก็จะมีความหมายเช่นเดียวกับบรรทัดแรกคือ จะพิมพ์คำว่า Press any key to stop จากนั้น cursor ก็จะวิ่งไปขึ้นบรรทัดใหม่เพราะตัว tab n
       ที่ผ่านมาคือคำสั่ง printf จะเห็นได้ว่าเป็นคำสั่งประเภท output คือสั่งพิมพ์ออกทางหน้าจอ ต่อมาจะมีคำสั่ง Input บ้าง นี่คือ คำสั่ง getch(); เป็นคำสั่งสำหรับรับค่าจากทาง keyboard เข้ามา ซึ่งจริงๆแล้วรูปแบบของคำสั่งก็มีหลายรูปแบบเช่นกัน แต่ในที่นี้ ที่เราจะต้องใช้คำสั่งนี้ก็เพื่อว่า เมื่อเราพิมพ์ข้อความทั้งสองข้างต้นไปแล้วให้ผู้ใช้ กดปุ่มใดๆก็ได้เพื่อจบโปรแกรม
       บรรทัดต่อมามีเครื่องหมาย } เป็นการแสดงว่าจบโปรแกรมในส่วนของ main ส่วนข้อความ /* end of main */ ที่ปรากฎก็คือ comment เช่นเดียวกับที่ได้อธิบายไปข้างต้นแล้ว เราจะสังเกตได้ว่า เมื่อมีเครื่องหมาย ปีกกาเปิด ก็ต้องมีเครื่องหมาย ปีกกาปิด เสมอ และอยู่กันเป็นคู่ๆด้วย
       ขอให้ทุกคนลองดัดแปลงโปรแกรมข้างต้นและสังเกตความเปลี่ยนแปลงที่เกิดขึ้นเช่น อาจจะเปลี่ยนข้อความในระหว่างเครื่องหมาย " และ " ใน printf หรือลองตัดเครื่องหมาย n ออก หรือ ลองเปลี่ยน n เป็น t หรือ r ดูว่าจะเกิดอะไรขึ้น หรือลองลบคำสั่ง getch(); ทิ้งไป แล้วดูว่าจะเกิดอะไรขึ้น

Credit : http://www.geocities.com/mathswu/cprogram/index.html

Site : www.it4x.com

« แก้ไขครั้งสุดท้าย: สิงหาคม 18, 2009, 22:30:51 โดย admin »

FREE—T๏—PLAY

ออฟไลน์
กระทู้ : 384
คะแนนขอบคุณ : 4
มีนาคม 25, 2010, 17:09:38
บอกได้คำเดียว"งง"

Poowangdee

ออฟไลน์ ( 【BP Warp】 )
กระทู้ : 235
คะแนนขอบคุณ : 6
https://www.youtube.com/channel/UCEagmGQ9pzUZJKK1f5K-CFw
พฤษภาคม 22, 2010, 02:18:54
ขอบคุณมากๆนะคะ  :) :)

เข้าใจถี่ถ้วนล่ะ หุหุ

แต่ช่วงนี้คงยังมะได้ลองหรอกค่ะ

ติดเกม งุงิ

เพียงแค่แบ่งปัน

ออฟไลน์
กระทู้ : 66
คะแนนขอบคุณ : 0
กรกฎาคม 31, 2010, 12:44:07
แฟ้มว่า จะมาศึกษาภาษาC สะหน่อย งงตั้งแต่ ตัว A แล้ว

ความรู้ยังไม่ดีพอ :-X :-X :-X :-X :-X

Nitithorntrz

ออฟไลน์
กระทู้ : 4
คะแนนขอบคุณ : 0
ตุลาคม 11, 2010, 19:21:46
 :-*  สุดย๊อดเจง ๆ งง มากมาย

 

ด้วยฟังค์ชั่น ตอบด่วน คุณสามารถใช้โค๊ดและ เครื่องหมายแสดงอารมณ์ได้ เหมือนการตั้งกระทู้ธรรมดา แต่สามารถทำได้สะดวกกว่า

ระวัง: หัวข้อนี้ไม่มีการอัพเดทมานานถึง 120 วัน

แจ้งเตือน: โพสของคุณจะไม่แสดงจนกว่าผู้ดูแลจะอนุมัติ.
ชื่อ: อีเมล์: