Page 1 of 6 123 ... LastLast
Results 1 to 10 of 52

Thread: มาเรียน ภาษา C ร่วมกันดีกว่า~

  1. #1
    Junior Member
    Join Date
    Oct 2007
    Posts
    15


    ก็นะ ขอเชิญเหล่า ชาละวัน เอ๊ย!! พาดาวัน(padawan) ทั้งหลาย
    ที่ยังมิอาจเอื้อมเข้าไปยังหมวดต่างๆได้ มาร่วมเรียน ร่วมแชร์ข้อมูล และศึกษาเกี่ยวกับภาษา C กันที่นี่เถอะครับ ^ ^

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

    ซึ่ง ผมขอบอกไว้ก่อนเลยนะครับว่า ผมเองก็เพิ่งเริ่มเรียน C เหมือนกัน
    หลายคนอาจจะถามว่า "อ้าว เอ็งก็เพิ่งเริ่มเรียน แล้วเอ็งจะเอาอะไรมาสอนพวกอั๊วฟระ"
    ผมอยากจะบอกว่า "เราเรียนร่วมกัน" ครับ คือ ผมก็จะสอนในเท่าที่ผมรู้ ส่วนใครที่รู้อะไรเพิ่มเติม
    ก็มาสอนผมและคนอื่นต่อบ้าง ซึ่ง ถือว่าเป็นการเรียนร่วมกันครับ ไม่ถือว่า ใครสอนใคร
    ----------------------------------------------------------------------------------------
    เกริ่นมากันพอสมควรแล้ว เราก็มาเริ่มแนะนำตัวกันก่อนดีกว่าครับ ^ ^

    ผม shomon สมาชิคกรุ๊ปชาละวัน(padawan) ชื่อเล่นก็ "น้ำ"
    มีความสนใจในด้าน: การโปรแกรมต่างๆ ภาษาทุกภาษา แต่ตอนนี้ให้ความสนใจเป็นพิเศษกับภาษาซี(C Language)
    ผลงาน: เคยเขียนโปรแกรมที่ชื่อ Smile Creater (แต่ใช้โปรแกรม Game Makerนะ = =a)
    เป้าหมายที่ใฝ่ฝัน: พัฒนาซอฟแวร์ประยุกต์ เพื่อความบันเทิง(เกม) ที่ เมื่อคุณได้ลองเล่นแล้วจะวางไม่ลง!!

    --------------------------------------------------------------------------------------------------------
    ครับ เราก็มาเริ่มบทเรียน ภาษาซี(C Language) กันเลยดีกว่าครับ ^ ^

    data : non-data (อดใจรอซักแป๊บ กะลังพิมพ์บทความตอนที่1อยู่ครับ....)
    ----------------

    ขอบคุณทุกคนที่เข้ามาแลกเปลี่ยนความรู้กันครับ

    เรามาทำสังคมชาละวันให้น่าอยู่กันเต๊อะ ^ ^
    ผมเชื่อว่า ผมคงอยู่ในชาละวันกรุ๊ปไปอีกนานเลย(ความสามารถไม่พอจะกระโดดไปFull member)


    ติมตามบทความ C ได้ต่อ เมื่อคุณเป็น Full MemBer นะครับ!!!

  2. #2
    Junior Member
    Join Date
    Oct 2007
    Posts
    15


    ชาละวันเลินนิ่ง ตอนที่1: มาดูประวัติ C Language กันเต๊อะ!!

    ประวัติ ภาษาC (History of C Language)

    ภาษาซี (C programming language) เป็นภาษาโปรแกรมเชิงโครงสร้างระดับสูงที่ได้รับการพัฒนาขึ้นในช่วงทศวรรษ 1970 โดย เคน ธอมป์สัน (Ken Thompson) และ เดนนิส ริทชี่ (Dennis Ritchie) ขณะทำงานอยู่ที่ เบลล์เทเลโฟน เลบอราทอรี่ สำหรับใช้ในระบบปฏิบัติการยูนิกซ์ ต่อมาภายหลังได้ถูกนำไปใช้กับระบบปฏิบัติการอื่น ๆ และกลายเป็นภาษาโปรแกรมหนึ่งที่ใช้กันแพร่หลายมากที่สุด ภาษาซีมีจุดเด่นที่ประสิทธิภาพในการทำงาน เนื่องจากมีความสามารถใกล้เคียงกับภาษาระดับต่ำ แต่เขียนแบบภาษาระดับสูง โปรแกรมคอมพิวเตอร์ที่เขียนด้วยภาษาซีจึงทำงานได้รวดเร็ว ภาษาซีเป็นภาษาโปรแกรมที่นิยมใช้กันมากสำหรับพัฒนาระบบปฏิบัติการ,ซอฟต์แวร์ระบบ , ควบคุมไมโครคอนโทรลเลอร์ และเป็นภาษาที่ใช้กันทั่วไปในหลักสูตรวิทยาการคอมพิวเตอร์


    หน้าตาของน้าเคน (ไม่ใช่น้าเครนใน ดายฮาร์ดน่อ = =a)


    หน้าตาของลุงเดนนิส


    เครดิตรูป จาก http://se-ed.net/hacking/hack_p.html
    เครดิตข้อความจาก http://th.wikipedia.org/

    ps.ความจริง ในชื่อคนพัฒนา ผมเห็นมีชื่อของไบรอัน อีกคนด้วยครับ แต่ในวิกี้ มันมีแค่น้าเคนกะลุงเดนนิสเอง = =a
    ps.2 ถ้าผมขึ้นโพสใหม่ตอนเพิ่มบทความที่2นี่ จะถือว่าผมปั๊มโพสมั้ยครับ คือ ไม่อยากให้ข้อความมันติดกันอ่ะครับ เพราะมันคนละตอน -*-

  3. #3
    Junior Member
    Join Date
    Oct 2007
    Posts
    15


    ชาละวันเลินนิ่ง ตอนที่2: เริ่มต้นเขียน เรียนให้เหมือนเล่น!!

    เอ่อ.. จากชื่อตอน ไม่ใช่บอกว่า ให้เล่นในเวลาเรียนนะครับ = =a
    แค่ให้เรียนอย่างสนุกสนาน ให้เหมือนเวลาที่เราเล่นนั่นเอง = =a อย่าไปเครียดครับ!!

    ----------------
    ก่อนอื่นของแนะนำพื้นฐานเกี่ยวกับคอมพิวเตอร์กันซักนิด ก่อนที่จะเริ่มเรียนรู้ภาษา C กัน หน่วยสำคัญที่สุดของคอมพิวเตอร์ก็คือ หน่วยประมวลผลหรือที่เรียกกันว่า CPU โดยปกติ CPU จะมีภาษาของตัวเองที่เรียกว่า ภาษาเครื่อง (Machine Language) ซึ่งจะเป็นภาษาที่ประกอบไปด้วยเลขฐานสองมากมาย ดังนั้นการที่จะเขียนโปรแกรมควบคุมการทำงานของคอมพิวเตอร์ โดยใช้ภาษาเครื่องโดยตรงนั้นจึงทำได้ยาก จึงได้มีการพัฒนาตัวแปรภาษาเครื่องที่เรียกว่า โปรแกรมภาษาระดับสูงขึ้นมา หรือที่เรียกว่า High Level Languages โดยภาษาในระดับสูงเหล่านี้ จะมีลักษณะรูปแบบการเขียน (Syntax) ที่ทำให้เข้าใจได้ง่ายต่อการสื่อสารกับผู้พัฒนา และถูกออกแบบมาให้ง่ายต่อการใช้งาน และจะเปลี่ยนคำสั่งจากผู้ใช้งาน ไปเป็นเป็นภาษาเครื่อง เพื่อที่จะควบคุมการทำงานของคอมพิวเตอร์ต่อไป ตัวอย่างของโปรแกรมภาษาระดับสูง ได้แก่ COBOL ใช้กันมากสำหรับโปรแกรมทางด้านธุรกิจ, Fortran ใช้กันมากสำหรับการพัฒนาโปรแกรมด้านวิทยาศาสตร์และวิศวกรรมศาสตร์ เพราะง่ายต่อการคำนวณ, Pascal มีใช้กันทั่วไป แต่เน้นสำหรับการพัฒนาเครื่องมือสำหรับการเรียนการสอน, C & C++ ใช้ทั่วไป ปัจจุบันมีผู้เลือกที่จะใช้กันอย่างแพร่หลาย, PROLOG เน้นหนักไปทางด้านงานประเภท AI และ JAVA ใช้ได้ทั่วไป ปัจจุบันเริ่มมีผู้หันมาสนใจกันมากและเพิ่มขึ้นอย่างรวดเร็ว
    คราวนี้เราลองมาเตรียมตัวกันซักนิก ก่อนที่จะลงมือพัฒนาโปรแกรมคอมพิวเตอร์ ขั้นแรก เราต้องศึกษารูปแบบความต้องการของโปรแกรมที่จะพัฒนา จากนั้นก็วิเคราะห์ถึงปัญหาตลอดจนวิธีการแก้ปัญหา จากนั้นจึงนำเอาความคิดในการแก้ปัญหาอย่างเป็นขั้นตอน ไปเขียนในรูปแบบของโปรแกรมภาษาในระดับสูง ซึ่งจะอยู่ในรูปแบบของ Source Program หรือ Source Code จากนั้นเราก็จะใช้ Complier ของภาษาที่เราเลือก มาทำการ Compile Source code หรือกล่าวง่ายๆ คือแปลง Source code ของเราให้เป็นภาษาเครื่องนั่นเอง ซึ่งในขั้นตอนนี้ ผลที่ได้ เราจะเรียกว่า Object code จากนั้น Complier ก็จะทำการ Link หรือเชื่อม Object code เข้ากับฟังก์ชันการทำงานใน Libraries ต่างๆ ที่จำเป็นต่อการใช้งาน แล้วนำไปไว้ในหน่วยความจำ แล้วเราก็จะสามารถ Run เพื่อดูผลของการทำงานโปรแกรมได้ หากโปรแกรมมีข้อผิดพลาด เราก็จะทำการแก้ หรือที่เรียกกันในภาษาคอมพิวเตอร์ว่า การ Debug นั่นเอง
    ภาษา C เป็นโปรแกรมภาษาระดับสูง ถูกพัฒนาขึ้นในปี 1972 ที่ AT&T Bell Lab เราสามารถใช้ภาษา C มาเขียนเป็นคำสั่งต่างๆ ที่คอมพิวเตอร์สามารถเข้าใจได้ และกลุ่มของคำสั่งเหล่านี้ เราก็เรียกกันว่า อัลกอริธึม ได้มีผู้ให้คำจำกัดความของคำว่า อัลกอริธึม ว่าเป็น “A precise description of a step-by-step process that is guaranteed to terminate after a finite number of steps with a correct answer for every particular instance of an algorithmic problem that may occur.” สำหรับ Compiler ภาษา C ที่มีในปัจจุบัน มี 2 ค่ายใหญ่ๆ ที่มีผู้คนสนใจใช้กันมากได้แก่ Microsoft และ Borland การใช้งาน Compiler ทั้งสองตัวนี้ สามารถเรียนรู้ได้ไม่ยากนัก เราจึงจะมาเริ่มต้นที่การเขียนโปรแกรมในภาษา C กันเลย เราลองมาเริ่มจากตัวอย่างการเขียน ภาษา C แบบ ง่ายๆ กันก่อนกับโปรแกรม Hello World

    เครดิตบทความ http://www.vcharkarn.com/include/article/s...e.php?aid=18065 ครับ
    ------------------
    ครับ อย่างที่ข้อความข้างบนบอก "เรามาเริ่มเขียนภาษา C แบบง่ายๆ กับโปรแกรม Hello word"
    ผมจะสานต่อให้เองครับ ^ ^

    #include <stdio.h>
    main()
    {
    printf("Hello World!!\n");
    }[/b]
    เนี่ยล่ะครับ โปรแกรม Hello World
    เป็นไงครับ ดูแล้วไม่ยากเลยใช่ป้ะ ^ ^

    เรามาดูคำอธิบายของแต่ละบรรทัดดีกว่าครับ

    บรรทัดแรก #include <stdio.h>
    #include คือคำสั่งให้รวบรวมฟังค์ชั่นต่างๆ จากไฟล์ stdio.h มาใช้งานครับ
    ซึ่ง ใน < > อาจจะเปลี่ยนเป็นชื่อของ ไฟล์ ตัวอื่นก็ได้ครับ (ซึ่ง เราจะมารู้กันทีหลังละกันครับ ตอนนี้ที่ใช้ก้มีแค่ stdio.h)
    ซึ่ง ในแฟ้มไฟล์ stdio.h นี้ จะรวบรวมฟังค์ชั่นในการ นำข้อมูลเข้า และแสดงผลลัพท์ ครับ


    บรรทัดที่สอง main()
    โดย ทุกโปรแกรมในภาษา C จำเป็นต้องเปิดด้วยฟังค์ชั่น main() ครับ
    โดย ส่วนมาก เราจะใช้ฟังค์ชั่น main() ในการกำหนดค่าเริ่มต้นต่างๆของโปรแกรมครับ (เกือบๆจะลองเว็บวิชาการมาเลยล่ะ -*-)


    บรรทัดที่สาม {
    คำสั่งปีกกาเปิด { เป็นตัวบ่งบอกถึงขอบเขตของคำสั่งทั้งหมดที่เริ่มด้วยฟังค์ชั่น main() ซึ่ง เมื่อจบฟังค์ชั่น main() แล้ว ให้ปิดด้วยปีกกาปิด }


    บรรทัดที่สี่ printf("Hello World!!\n");
    ฟังค์ชั่น printf เป็นฟังค์ชั่นที่อยู่ในแฟ้ม stdio.h(หรืออยู่ในภาษาซี) ที่คอยทำหน้าที่ พิมพ์คำพูดทุกคำพูดที่อยู่ในเครื่องหมายคำพูด(" ")
    ให้แสดงผลออกมาทางหน้าจอ ซึ่ง ในที่นี้ จะแสดงข้อความ Hello World ออกมา
    ถามว่า ทำไมไม่แสดง \n ล่ะ??
    ตอบ ก็เพราะ \n นั้น เป็นฟังค์ชั่นหนึ่งของภาษาซีน่ะสิ!!
    ใช่ครับ \n คือส่วนนึงของฟังค์ชั่นของภาษาซี ที่ทำหน้าที่ "เว้นบรรทัด"
    ซึ่ง เมื่อโปรแกรมอ่านมาเจอบรรทัดนี้แล้ว มันก็จะทำการเว้นบรรทัดทันทีครับ ซึ่ง ฟังค์ชั่นตัวนี้ ต้องใส่ในเครื่องหมายคำพูดเท่านั้น!!
    เช่น ("Hello\n"); ถ้าเรานำมันไปใส่นอกเครื่องหมายคำพูด เป็น ("hello"\n);
    ถ้าถามผมว่า ใส่ได้มั้ย ผมจะตอบว่า ได้ครับ ^ ^ แต่ เมื่อคุณใส่ไป แล้วคุณลองรันโปรแกรมดู ก็จะรู้เองครับว่าจะเป็นยังไง
    และ ทุกครั้งที่จบหนึ่งคำสั่ง ให้ปิดท้ายด้วยเครื่องหมาย เซมิคอลอน (semi-colon) ( ; ) ครับ
    ซึ่ง เป็นการบอกโปรแกรมว่า "โอเค คำสั่งนี้มีเพียงเท่านี้แหละ จบแล้ว ไปอ่านบรรทัดต่อไปได้แล้วป่ะ"

    บรรทัดที่ห้า } (ปีกกาปิด)
    เป็นการบอกโปรแกรมว่า จบฟังค์ชั่น main() แล้วนะ

    เป็นอันจบครับ ลองนำไปรันดูได้ครับ ^ ^
    -----------------------------------------------------------------------------------------

    ใครมีความรู้อะไร ก็มาแบ่งปันกันมั่งนะคร๊าบ ^ ^

    แล้วก็ ถ้าไม่เข้าใจตรงไหนในบทความแรก ถามได้นะครับ ^ ^
    ขอบอกว่า ผมไม่ใช่คนที่ เซียนในซี หรือ สั้นๆว่า CC (เซียนซี) เพราะงั้น บางคำตอบ อาจจะตอบคุณไม่ได้
    ต้องขออภัยด้วยครับ

    ป.ล. ผมไม่สอนใน c++ นะครับ (หนึ่ง เพราะยังเขียนไม่เป็น -*-) แต่จะสอน ซีอย่างเดียว ซึ่ง เป็นพื้นฐานของภาษาทั้งปวงครับ ^ ^
    ป.ล.2 พรุ่งนี้ผมไม่อยู่บ้านนะครับ พรุ่งนี้ บทความของผมจะไม่มีการอัพเดท ต้องขออภัยครับ - _/\_ -[/hide]

    ยกเลิกที่ซ่อนข้อความออกแล้วนะครับ เนื่องจากว่า ได้รับคำชี้แนะจากพี่คนนึง
    เค้าบอก บทความนี้ไม่อันตรายอะไร ไม่ล๊อคก็ไม่เป็นอะไรหรอก

  4. #4
    Junior Member
    Join Date
    Oct 2007
    Posts
    15


    ชาละวันเลินนิ่ง ตอนที่3: รหัสควบคุมต่างๆ

    ครับ วันนี้เราจะมาต่อในเรื่องของ ฟังค์ชั่นที่ใช้ในการควบคุมการแสดงผลครับ
    ---------------
    จากเมื่อวาน ในตอนที่2 ที่ให้เขียนโปรแกรม Hello

    วันนี้ เราจะมาต่อในเรื่องของการควบคุมการแสดงผลกันครับ
    อ๊ะๆๆๆ อย่ากลัวๆ มันไม่ยากอย่างที่คิดครับ ^ ^
    เช่น คุณจะเว้นบรรทัดในhtml ก็
    ใช่มะฮะ แต่ ภาษาซี จะเขียนเป็น \n ครับ

    นี่คือ หน้าตาโปรแกรมที่จะใช้ในการสอนของบทความนี้ครับ



    นี่คือโค๊ด

    #include <stdio.h>
    main()
    {
    printf("Hello world\n");
    printf("My name is\tShomon!\n");
    printf("if this program running\n");
    printf("you will listen to \"beep\"\a\n");
    }


    ครับ ก็ ขอออกตัวก่อนว่า ไอผมก็ไม่ได้เก่งภาษาอังกฤษอะไรมากมายนักนะครับ
    แต่ ผมกะจะบอกคุณว่า
    "สวัสดี ชาวโลก~ ชื่อของผมคือ shomon ถ้าโปรแกรมนี้ทำงานเมื่อไหร่ คุณจะได้ยินเสียง "บี๊บ" ทันที"

    เรามาดูการทำงานกันดีกว่าครับ
    การทำงานของโปรแกรมตัวนี้ ก็ไม่มีอะไรมากครับ ส่วนมากก็จะเป็นที่สอนไปแล้วในบทความที่แล้วทั้งนั้นเลย

    แต่ ในตอนนี้ จะมาอธิบายถึงว่า ทำไม??? ผมถึงสั่งให้โปรแกรมมันเว้นบรรทัดได้
    ทำไม ผมจึงสั่งให้มันเว้นวรรค 5ตัวอักษร(Tab) และทำไม ผมถึงสั่งให้โปรแกรมร้อง "ปี๊บ" ได้

    ขั้นแรก เรามารู้จักกับฟังค์ชั่นต่างๆกันดีกว่าครับ

    \a = ทำให้โปรแกรมส่งเสียง Beep
    \n = สั่งให้โปรแกรมขึ้นบรรทัดใหม่
    \t = เป็นการสั่งให้โปรแกรมเว้นวรรค 5ช่วงตัวอักษร (Tab)
    \b = สั่งให้โปรแกรม ย้อนกลับไป1ตัวอักษร
    \v = สั่งให้โปรแกรมเว้นแทบในแนวตั้ง
    \f = ขึ้นหน้าใหม่
    \r = รหัสคืนค่า return
    \" = ใช้แทนเครื่องหมาย ( " )
    \&#39; = ใช้แทนเครื่องหมาย ( &#39; )
    \? = แทนเครื่องหมาย ( ? )
    \\ = แทนเครื่องหมาย ( \ )
    \0 = ทำให้ค่าว่างเปล่า

    ซึ่ง ในที่นี้ ให้ลองนำฟังค์ชั่นไปเปรียบเทียบดูกันนะครับ แล้วจะรู้ว่า ตัวไหนเป็นตัวไหนและทำงานยังไง
    จากนั้นลองนำไปคอมไพล์ดูครับ ^ ^

    ส่วนนี่คือ ตัวอย่างอีกโปรแกรมนึงครับ

    #include <stdio.h>
    main()
    {
    printf("my program 1 2 3\b4");
    }

    ครับ เป็นโปรแกรมที่แสดงการทำงานของฟังค์ชั่น \b นั่นเอง
    เมื่อคอมไพล์ จะได้แบบนี้ครับ



    ครับ เนื่องจาก ผมใช้ \b หลังเลข 3 ซึี่ง ฟังค์ชั่น \b เนี่ย มันจะทำให้โปรแกรมย้อนกลับไป1ตัวอักษร
    คือ เมื่อมันเขียน 3ปุ๊บ ก็ถอยกลับไป และเขียน4ทับแทน -*-
    ------------------------

    ขอโทษนะครับ บทความตอนนี้ รีบเขียนไปหน่อย (อาจารย์โยนงานมาให้ เลยต้องรีบไปทำงานของอาจารย์)
    เอาไว้ บทหน้า ผมสัญญาว่า จะระเอียดกว่านี้แน่นอนครับ!!

  5. #5
    Senior Member
    Join Date
    Oct 2006
    Location
    thailand
    Posts
    182


    แนะนำตัว compiler และ วิธี compile ด้วยก็ดีนะครับ
    คนที่ไม่เีคยเขียนเลยจะได้เห็น ภาพ

    Good Job!!!

    เอาใจช่วยครับ : )

  6. #6


    โหหหห
    เปิดตัวได้หรู มากเลยครับ
    ขอบคุณสำหรับความรู้ครับ

  7. #7
    Junior Member
    Join Date
    Oct 2007
    Posts
    15


    ชาละวันเลินนิ่งตอนที่ 4: อ๊าาาาา อะไรเนี่ย คอมเม้นต์อยู่หนายยยยย

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

    ใช่ครับ นั่นคือ การใส่ Comment นั่นเอง
    หลายคนอาจถามว่า เอ๊ะ? การใส่คอมเม้นต์นี่ มันสำคัญยังไงหว่า
    ใส่ไปก็เท่านั้น ใส่ไม่ใส่ โปรแกรมมันก็ไม่สนใจข้อความนั้นอยู่แล้ว

    งั้นผมขอถามมั่งว่า กรณีที่คุณเกิดเขียนโปรแกรมประมาณ1-2พันบรรทัด แล้ว คุณจะรู้มั้ยว่า
    บรรทัดนี้ๆ ใช้ทำอะไร คุณไม่ต้องมานั่งไล่การทำงานตั้งแต่บรรทัดแรกเลยหรือ??
    เราช่วยคุณได้ครับ!!


    การใส่คอมเม้นต์นั้น มีวิธีการทำไม่ยากครับ โดย มีวิธีอยู่ 2 วิธี (หรือใครรู้มากกว่านั้น ช่วยแก้ทีนะครับ เพราะผมรู้แค่2ตัว -*-)
    คือ // แล้ว /*......*/ อาหะ หลายคนคงงงว่า "จะมีทำไมหลายตัวฟระ"
    คือ ไอเจ้า // เนี่ย มันจะสารถใส่comment ได้แค่บรรทัดเดียวครับ (เหมาะกับการใส่commentสั้นๆ)
    แต่ไอเจ้า /* */ เนี่ย มันสามารถใส่กี่บรรทัดก็ได้ครับ โดย เมื่อเริ่มต้น comment (ผมขอเรียกว่าคำอธิบายละกัน ขี้เกียจสลับภาษาไปมา -*-)
    เริ่มโดย
    /* this
    is
    a
    comment
    */

    ครับ คือ เมื่อเริ่มคำอธิบาย ให้เปิดด้วย /* และเมื่อจบคำอธิบาย ให้ปิดด้วย */

    ดังตัวอย่าง

    #include <stdio.h>
    main()
    {
    /*this is
    a
    comment
    */
    printf("my program 1 2 3\b4\a");
    //end program
    }

    ครับ แล้วถามว่า ใส่ // หลายบรรทัดไปก็จบแล้วนิ เช่น

    //this is
    //a
    //comment

    ใช่ครับ วิธีนี้ก็ทำได้ฮะ
    แต่ ถ้าเป็นคุณ คุณจะเลือกวิธีไหน ระหว่าง พิมพ์ // ทุกบรรทัด กับ พิมพ์ /*บรรทัดแรกและ*/บรรทัดจบล่ะครับ
    เป็นผม ผมเลือกอย่างหลังนะ....
    ----------------------------------------------------

    ตอนนี้สั้นหน่อยนะครับ (ตอนแรกก็ไม่กะจะแยกหรอก เพราะมันสั้นกะรวมกะตอนที่ 3 แต่ เห็นมันคนละเรื่องกัน เลยแยกฮะ)

    ตอนหน้า ผมจะทำในเรื่องของ โปรแกรมที่ใช้คอมไพล์ละกันครับ
    ขอบคุณ คุณ pspn.n มากเลยครับ ที่แนะนำ > <

    และขอบคุณทุกคนที่เข้ามาอ่าน(ถึงจะมีคนตอบน้อยนิดก็เหอะ) มากๆเลยครับ
    แค่ผมเห็นคนเข้ามาอ่าน และได้ความรู้กลับไป ไม่มากก็น้อย ผมก็ดีใจ และมีกำลังใจจะเขียนต่อแล้วครับ > <
    (แม้ว่าความรู้จะน้อยนิด ก็จะพยายามพาทุกคนไปให้ถึงฝั่งพร้อมกันให้ด้ายยยย > <)

  8. #8
    Junior Member
    Join Date
    Oct 2007
    Posts
    15


    ชาละวันเลินนิ่ง ตอนที่5: รหัสควบคุมต่างๆ2 (ต่อจากตอนที่ 3 ครับ)
    -------------------------------
    เหอ ขอผมย้อนกลับไปยังบทที่3นิดนึงนะครับ
    คงมีหลายคน(มั้ง) ที่อาจจะไม่รู้วิธีใช้ของฟังค์ชั่นบางตัว ผมเลยทำบทความตอนที่5 ให้ย้อนกลับไปตอนที่3ใหม่
    ยังไงต้องขออภัยด้วยครับ ที่อธิบายในตอนที่3ไม่ละเอียดมากนัก

    โดย ผมจะอธิบายเฉพาะในตัวที่ผมรู้จัก และมั่นใจว่า เมื่ออธิบายแล้ว จะได้ข้อมูลที่ถูกต้องละกันนะครับ
    โดยจะอ้างอิงจาก
    \a = ทำให้โปรแกรมส่งเสียง Beep
    \n = สั่งให้โปรแกรมขึ้นบรรทัดใหม่
    \t = เป็นการสั่งให้โปรแกรมเว้นวรรค 5ช่วงตัวอักษร (Tab)
    \b = สั่งให้โปรแกรม ย้อนกลับไป1ตัวอักษร
    \v = สั่งให้โปรแกรมเว้นแทบในแนวตั้ง
    \f = ขึ้นหน้าใหม่
    \r = รหัสคืนค่า return
    \" = ใช้แทนเครื่องหมาย ( " )
    \&#39; = ใช้แทนเครื่องหมาย ( &#39; )
    \? = แทนเครื่องหมาย ( ? )
    \\ = แทนเครื่องหมาย ( \ )
    \0 = ทำให้ค่าว่างเปล่า[/b]
    ครับ เรามาดูหน้าตาโปรแกรม ที่เกิดจากการใช้ฟังค์ชั่นกันเถอะครับ



    โค๊ดครับ
    #include <stdio.h>
    main()
    {
    printf("Hello every body\n");
    printf("This is voice \"beep\"\a\n");
    printf("This is a \tTab\n");
    printf("what\?\n");
    printf("this is \\ \&#39; function\n");
    printf("how are you\n");
    printf("1 2 3\b4");
    }[/b]
    จากทั้งหมด ผมใช้ฟังค์ชั่น
    \n
    \a
    \b
    \t
    \"
    \&#39;
    \?

    ไปนะครับ ส่วน \r \f \v ในdev ผมใช้แล้ว มันกลายเป็นรูป♀กะ♂ ไปสะงั้น -*-
    (ใครที่นำไปลองทำแล้วไม่เป็น ช่วยมาเพิ่มให้ผมด้วยนะคร๊าบ ^ ^)

    จากโค๊ด ในบรรทัดแรก printf("Hello every body\n");
    ครับ เป็นการพิมพ์ธรรมดา และใช้ฟังค์ชั่น \n มาไว้ต่อท้าย นั่นคือ การเว้นบรรทัดครับ สังเกตุจากรูป จะเห็นว่า บรรทัด
    ถูกเว้นลงไป เมื่อจบ Hello every body

    จากโค๊ดในบรรทัดที่สอง printf("This is voice \"beep\"\a\n");
    ผมใช้ฟังค์ชั่น \a ซึ่ง นั่นทำให้เกิดเสียง ปี๊บ ครับ (ต้องลองทำเองครับ ข้อนี้)

    จากโค๊ดในบรรทัดที่สาม printf("This is a \tTab\n");
    ผมใช้ \t ซึ่ง นั่นทำให้เกิดการเว้นระยะ5ตัวอักษรครับ (ดูในรูป)

    จากโค๊ดในบรรทัดที่สี่ printf("what\?\n");
    ผมใช้เครื่องหมาย ? ครับ ซึ่ง เวลาจะเขียน ก็เติม \ เข้าไป เป็น \? (แต่โปรแกรมจะแสดงเฉพาะ ?)

    จากโค๊ดในบรรทัดที่ห้า printf("this is \\ \&#39; function\n");
    เหมือนบรรทัดที่4ครับ แต่เป็นการแสดงเครื่องหมาย &#39; และ \

    โคโในบรรทัดที่ 6 ก็เหมือนเดิม การใช้ \n ครับ

    จากโค๊ดในบรรทัดที่ 7 printf("1 2 3\b4");
    เห็นในโค๊ด มี 1 2 3 4 แต่ในรูป ทำไมมีแค่ 1 2 4 ใช่มั้ยครับ??
    นั่นเพราะ ผมใช้ฟังค์ชั่น \b ครับ ฟังค์ชั่น \bก็คล้ายๆการกดback space ในคีย์บอร์ดนั่นแหละครับ
    คือ เมื่อรันแล้ว มันจะลบค่าที่อยู่หน้า \b 1ตัว แล้วจึงอ่านตามปกติ

    ครับ ใครที่ใช้ฟังค์ชัั่นที่ผมใช้ไม่ได้ แล้วใช้ได้ ช่วยนำมาเพิ่มเติมให้ทีนะครับ
    ในบทหน้าเราจะพูดถึงโปรแกรมที่ใช้คอมไพล์กันจริงๆล่ะเน่อ ^ ^ (ความจริงมันควรจะอยู่หน้าสุดนะเนี่ยไอโปรที่ใช้คอมไพล์ -*-)
    --------------------
    ยังไงก็ คือ ผมอาจจะย้ายบทความทั้งหมดไปไว้ที่ citec-pedia นะครับ หฃยังไง ถ้าใครหาอ่านในนี้ไม่เจอ
    ก้ลองไปด้อมๆแถว citec-pedia ดูละกันนะครับ ^ ^

  9. #9
    Junior Member
    Join Date
    Oct 2007
    Posts
    5


    ขอบคุณครับ

  10. #10
    Junior Member
    Join Date
    Oct 2007
    Posts
    0


    ขอบคุณคับ สำหรับความคิดเห็นดี ๆๆ จะได้ต่อยอด คับ

Page 1 of 6 123 ... LastLast

Similar Threads

  1. Replies: 15
    Last Post: 26-07-2009, 08:00 PM
  2. มาเรียน Javascript กันดีกว่า
    By squallcope in forum แนะความรู้ด้าน Programming ต่างๆ
    Replies: 8
    Last Post: 30-10-2007, 11:52 PM
  3. Replies: 1
    Last Post: 06-07-2007, 11:19 AM
  4. Replies: 0
    Last Post: 23-06-2007, 10:54 PM
  5. มาเรียน Graphics กันดีกว่า
    By Noom in forum Graphics 2D, 3D, ClipArt, Icons, Wallpaper
    Replies: 1
    Last Post: 21-10-2002, 04:36 PM

Members who have read this thread : 0

Actions : (View-Readers)

There are no names to display.

Tags for this Thread

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •