วันจันทร์ที่ 29 กันยายน พ.ศ. 2557

เริ่มต้นจากศูนย์สู่นักเขียนโปรแกรมช่วยเล่น

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


คำศัพท์ภาษาซี
int main ( ) // -  จุดเริ่มต้นโปรแกรม
{ // -   เริ่มต้นขอบเขต การทำงาน
int i = 10; // -   ประกาศตัวแปร i เป็น Interger และให้ค่า 10  Interger หมายถึง เลขจำนวนเต็ม (คือไม่มีจุดทศนิยมนั่นเอง) และค่าจำนวนเต็มนั้นจะเป็นบวกหรือลบก็ได้
Printf ( "Value in i = %in", i ); // - พิมพ์ค่า i   printf()  คำสั่ง printf ถือว่าเป็นคำสั่งพื้นฐานที่สุดในการแสดงผลข้อมูลทุกชนิดออกทางหน้าจอ ไม่ว่าจะเป็นจำนวนเต็ม( int ) , ทศนิยม ( float ) , ข้อความ ( string ) หรืออักขระ นอกจากนี้คำสั่งยังมีความยืดหยุ่นสูง โดยเราสามาถกำหนดหรือจัดรูปแบบการแสดงผลให้มีระเบียบหรือเหมาะสมตามความต้องการได้อีกด้วย รูปแบบการเรียกใช้คำสั่ง printf
return 0; // -  จบโปรแกรมให้ค่าจบโปรแกรม 0
} // -  สิ้นสุดขอบเขต การทำงาน
printf( "Value in i = %in", i ); // - function พิมพ์ผลลัพท์
int i = 10; // -  ประกาศตัวแปร i เป็น Interger และให้ค่า 10
long lvalue = 20; // -  ประกาศตัวแปร lvalue เป็น long และให้ค่า 20
float fvalue = 30.0; // -  ประกาศตัวแปร fvalue เป็น float และให้ค่า30.0
printf( "Value in i = %in", i ); // - %i พิมพ์ตัวแปรในรูปแบบ Integer
printf( "Value in fvalue = %fn", fvalue ); // - %f พิมพ์ตัวแปรในรูปแบบ float
int i = 10; // - ประกาศตัวแปร i เป็น Interger และให้ค่า 10
long lvalue = 20; // - ประกาศตัวแปร lvalue เป็น long และให้ค่า 20
float fvalue = 30.0; // - ประกาศตัวแปร fvalue เป็น float และให้ค่า30.0
char ch = 'A'; // - ตัวแปร character ให้ค่าอักษร 'A'
char data[80] = "Sawasdee"; // - ตัวแปร array character ให้ค่า ข้อความ Sawasdee
printf( "Value in ch = %cn", ch ); // - พิมพ์ค่าใน ch รูปแบบcharecter
printf( "Value in data = %sn", data ); // - พิมพ์ค่าใน data รูปแบบstring
int i = 10; // - ประกาศตัวแปร i เป็น Interger และให้ค่า 10
long lvalue = 20; // - ประกาศตัวแปร lvalue เป็น long และให้ค่า 20
float fvalue = 30.0; // - ประกาศตัวแปร fvalue เป็น float และให้ค่า30.0
char ch = 'A'; // - ตัวแปร character ให้ค่าอักษร 'A'
char data[80] = "Sawasdee"; // - ตัวแปร array character ให้ค่า ข้อความ Sawasdee
printf( "Value in ch = %cn", ch ); // - พิมพ์ค่าใน ch รูปแบบcharecter
int i = 10; // - ประกาศตัวแปร i เป็น Interger และให้ค่า 10
long lvalue = 20; // - ประกาศตัวแปร lvalue เป็น long และให้ค่า 20
float fvalue = 30.0; // - ประกาศตัวแปร fvalue เป็น float และให้ค่า30.0
char ch = 'A'; // - ตัวแปร character ให้ค่าอักษร 'A'
char data[80] = "Sawasdee"; // - ตัวแปร array character ให้ค่าข้อความ Sawasdee
printf( "Value in ch = %cn", ch ); // - พิมพ์ค่าใน ch รูปแบบcharecter
printf( "Value in data = %sn", data ); // - พิมพ์ค่าใน data รูปแบบstring
char ch = 'A'; // - ตัวแปร character ให้ค่าอักษร A
char data[80] = "Sawasdee"; // - ตัวแปร array character ให้ค่าข้อความ Hello
data = "Sawasdee"; // - ให้ค่าข้อความ Sawasdeeผิด ต้องใช้ functionในการให้ค่าตัวแปร array
Logical Data  ข้อมูลตรรกะ
Not    คำสั่งที่ใช้เปลี่ยนค่าที่เป็นเท็จ หรือกลับกันหรือเปลี่ยนจาก 0 เป็น 1
and   ใช้เชื่อง 2 เงื่อนไข หรือมากกว่าจะเป็นผลลัพธ์จริงเมื่อเงื่อนไขทั้ง 2หรือทั้งหมดเป็นจริง และจะให้เป็นเท็จเมื่อมีอย่างน้อย1 เงื่อนไขเป็นเท็จ
Or   ใช้เชื่อม 2 เงื่อนไขหรือมากว่าจะให้เป็นผลลัพธ์จริงเมื่อมีอย่างน้อย1เงื่อนไขเป็นจะให้เป็นเท็จเมื่อเงื่อนไขทั้ง 2 หรือทั้งหมดเป็นเท็จ
If… else   เป็นคำสั่ง 2 ทางเลือกอันหนึ่งซึ่งถ้าเงื่อนไขเป็นจริงจะทำคำสั่ง 1 แต่ถ้าเงื่อนไขเป็นเท็จก็จะไปทำอีกคำสั่ง1
If   เป็นคำสั่ง 2 ทางเลือกอันหนึ่งซึ่งถ้าเงื่อนไขเป็นจริงจะทำคำสั่ง 1 แต่ถ้าเงื่อนไขเป็นเท็จเป็นจะกระโดดออกจากชุดคำสั่ง if
Nested if   เป็นคำสั่ง If… else ที่มีคำสั่ง If… else หรือคำสั่ง if ซ้อนอยู่ด้านใดอีกด้านหนึ่ง
Switch   เป็นคำสั่งหลายทางเลือก ซึ่งเป็นคำสั่งที่แปลงมาจากคำสั่ง Nested ifคำสั่งนี้จะมีตัวแปรหนึ่งที่ใช้หาว่าคำสั่งไหน
Case   เป็นส่วนหนึ่งของคำสั่งSwitch คือเป็น
Else – if  เป็นคำสั่งที่ใช้แทนคำสั่ง Switch นั้นจะต้องเป็นชนิดข้อมูลที่เป็นจำนวนเต็มเท่านั้น แต่ถ้าเมื่อไรที่ต้องใช้ตัวแปรที่เป็นชนิดข้อมูลทศนิยมก็จะไม่สามารถใช้คำสั่ง switch ได้แต่ภาษา C ก็ได้มีคำสั่งอีกคำสั่งหนึ่งที่เป็นคำสั่งหลายทางเลือกและสามารถใช้ได้กับชนิดข้อมูลทุกประเภทคำสั่งนั้นก็คือ else – if ซึ่งชุดคำสั่งเหมือนกับคำสั่ง if…else แต่ต่างกันตรงที่ในคำสั่ง else ใช้ต่อด้วยคำสั่ง if ได้เลย
include  “ชื่อเฮดเดอร์ไฟล์”File ที่เก็บข้อมูลต่าง ๆ ของคอมพิวเตอร์ และในภาษา C นั้น ไฟล์ก็จะมีความหมายรวมไปถึงอุปกรณ์ต่าง ๆ ที่ต่อกับเครื่องคอมพิวเตอร์ด้วย
Logical Interfaces    เป็นตัวกลางในการติดต่อกับไฟล์
Text files    เป็นไฟล์ตัวอักษร เพราะโครงสร้างในการเก็บข้อมูลที่ค่าตัวเลขจำนวนเต็ม จุดทศนิยม หรือในลักษณะที่เป็นโครงสร้าง ซึ่งการเก็บข้อมูลจะถูกแปลงเป็นเลขฐานสองตามรหัส ASCII
Fwrite  เป็นฟังก์ชันในการเขียนข้อมูลลง Binary File
Binary Files   เป็นไฟล์ที่เก็บข้อมูลที่อยู่ในรูปแบบของค่าต่าง ๆ ซึ่งข้อมูลที่ไฟล์ประเภทนี้จัดเก็บ จะสามารถเป็นทั้งตัวเลขจำนวนเต็ม ตัวเลขทศนิยมตัวอักษร อาร์เรย์ และข้อมูลแบบโครงสร้าง โดยการจัดเก็บนั้นจะเก็บเหล่านั้นลงไปตรง ๆ เลย เช่น 16706 ก็จะเป็นค่าที่เหมือนอ่านกลับมาเป็นค่าเดิม แต่ Text Files จะเก็บเป็นตัวอักษร 1 6 7 0 6
File Table   ส่วนของหน่วยความจำที่เก็บข้อมูลต่าง ๆ ที่เกี่ยวกับ ไฟล์ เช่น ชื่อไฟล์ เป็นตัวชี้ตำแหน่งของไฟล์ เป็นต้น โดยจะมีตัวแปรที่เป็นไฟล์พอยเตอร์อยู่ ซึ่งไฟล์พอยเตอร์ตัวนี้จะมีข้อมูลเป็นโครงสร้างชนิด FILE ซึ่งลักษณะขอ File Table
Fopen    ฟังก์ชันในการเปิดไฟล์ คือ ฟังก์ชัน fopen ฟังก์ชันนี้ต้องการพารามิเตอร์ 2 ตัว ตัวแรกคือชื่อไฟล์ที่ต้องการเปิด ซึ่งอาจจะรวมที่อยู่
ของไฟล์โปรแกรม และตัวที่ 2 จะเป็นโหมดในการเปิด ซึ่งจะมีโหมดการเปิดอยู่ 3 โหมด
Fclose เป็นฟังก์ชันที่ใช้เปิดไฟล์ ที่ปิดไว้


Fread  เป็นฟังก์ชันในการอ่านข้อมูลจาก Binary File

 นี่ คือแนวทางการเริ่มต้นเขียนวันแรกคับรุ่นพี่บอกว่าศึกษาพวกนี้ให้เข้าใจอย่างถ่องแท้ก่อนแล้วค่อยเริ่มนับ2ต่อคับ