ชนิดของข้อมูล ตัวแปร และตัวดำเนินการ
โปรแกรมภาษา C# ตัวอักษรเล็ก/ใหญ่มีความสำคัญ คำสั่งทุกคำสั่งต้องปิดท้ายด้วยเซมิโคลอน (;) จำนวนช่องว่าง (ทั้งแนวตั้งแนวนอน) ไม่มีผลต่อ การทำงาน ใช้เครื่องหมายปีกกา { } จับกลุ่มคำสั่ง ข้อความที่อยู่ระหว่าง /* */ หรือหลัง // ถือเป็น คอมเม้นต์ ซึ่งไม่มีผลต่อการทำงานของโปรแกรม
การตั้งชื่อตัวแปร ในภาษา C# มีกฎการตั้งชื่อดังนี้ ตัวอย่างชื่อที่ถูกกฎ ขึ้นต้นด้วยอักขระภาษาอังกฤษ (A-Z, a-z) หรือตัวขีดเส้นใต้ (_) ส่วนที่เหลือประกอบด้วยอักขระภาษาอังกฤษ ตัวเลข หรือตัวขีดเส้นใต้ ความยาวสูงสุด 63 ตัวอักษร ต้องไม่ซ้ำกับคำสงวน (reserved words) เช่น class, namespace ตัวอย่างชื่อที่ถูกกฎ hEllO , E3_32ab , X_x_X022 ตัวอย่างชื่อที่ผิดกฎ 32ABC , A.2 , C#Program , while
คำสงวน (reserved words) คำเหล่านี้ห้ามนำไปใช้เป็นชื่อในภาษา C#
ตัวแปร: ชื่อ ตัวแปรจะต้องมีชื่อ การตั้งชื่อจะต้องทำตามกฎง่าย ๆ ดังนี้ ประกอบด้วย: ตัวเลข ตัวอักษรภาษาอังกฤษ หรืออักษรขีดเส้นใต้ ตัวแรกต้องเป็นตัวอักษรภาษาอังกฤษ หรือขีดเส้นใต้ (_) ไม่ซ้ำกับชื่อสงวน (reserved words) ตัวพิมพ์เล็ก-ตัวพิมพ์ใหญ่ แตกต่างกัน ตัวอย่าง name Name point9 9point _data class class_A class_”A”
การประกาศตัวแปร รูปแบบ ชนิดข้อมูล ชื่อตัวแปร; หรือ ประกาศตัวแปรพร้อมกำหนดค่าให้กับตัวแปร ชนิดข้อมูล ชื่อตัวแปร = ค่าของตัวแปร; ในกรณีที่มีตัวแปรหลาย ๆ ตัวและมีชนิดข้อมูลเดียวกัน กำหนดได้ดังนี้ ชนิดข้อมูล ชื่อตัวแปร1,ชื่อตัวแปร2,ชื่อตัวแปร3; int num; int num=10; float value1,num,num1; ตัวอย่าง
ตัวอย่าง การกำหนดค่าตัวแปร Num1 = 20 หมายถึง นำค่าจำนวนเต็ม 20 ไปไว้ในตัวแปร Num1 Num2 = 30 หมายถึง นำค่าจำนวนเต็ม 30 ไปไว้ในตัวแปร Num2 Total = Num1+Num2 หมายถึง คำนวณค่าของนิพจน์ Num1+Num2 แล้วนำผลลัพ์ไปไว้ในตัวแปร Total ดังนั้น ตัวแปร Total จะมีค่า = 50 int width, height,Area; int; width = 10; height = 20; Area = width * height;
การกำหนดค่าให้ตัวแปร เราสามารถกำหนดค่าเริ่มต้นให้กับตัวแปรได้พร้อมกับการประกาศตัวแปรนั้นๆ ได้ทันที ตัวอย่าง int width = 10, height = 20; int Area; Area = width * height;
แบบชนิดข้อมูลพื้นฐานใน C Type Size Description Range bool 1 byte Store truth value true / false char Store one character character code 0 – 255 byte Store positive integer 0 – 255 short 2 byte Store integer -32,768 -- 32,767 int 4 byte -2.1 x 109 -- 2.1 x 109 long 8 byte -9.2 x 1018 -- 9.2 x 1018 double 16 byte Store real number ± 5.0x10-324 -- ± 1.7x10308 string N/A Store sequence of characters
แบบข้อมูลที่สำคัญ ค่าตรรกะ bool จำนวนเต็ม int จำนวนจริง double มีสองค่า คือ true และ false จำนวนเต็ม int เก็บค่าในขอบเขต 2.1 x 109 -- 2.1 x 109 จำนวนจริง double เก็บค่าในขอบเขต ± 5.0x10-324 -- ± 1.7x10308
ชนิดของข้อมูล Numeric (เลขจำนวนเต็ม และเลขทศนิยม) Char (ตัวอักษร) String (ข้อความ) Boolean (บูลีน) Object
เลขจำนวนเต็ม Data type ขนาด ค่าของข้อมูล sbyte (System.SByte) 1 byte -128 ถึง 127 short (System.Int16) 2 bytes -32,768 ถึง 32,767 int (System.Int32) 4 bytes -2,147,483,648 ถึง 2,147,483,647 long (System.Int64) 8 bytes -263 ถึง (263 – 1)
เลขจำนวนเต็มบวก Data type ขนาด ค่าของข้อมูล byte (System.Byte) 1 byte 0 ถึง 255 ushort (System.UInt16) 2 bytes 0 ถึง 65,535 uint (System.UInt32) 4 bytes 0 ถึง 4,294,967,295 ulong (System.UInt64) 8 bytes 0 ถึง 264 -1
เลขทศนิยม Data type ขนาด ค่าของข้อมูล float (System.Single) 4 bytes ±1.5 x 10-45 ถึง ±3.4 x 1038 ความแม่นยำของทศนิยมอยู่ที่ 7 ตำแหน่ง double (System.Double) 8 bytes ±5.0 x 10-324 ถึง ±1.7 x 10308 ความแม่นยำของทศนิยมอยู่ที่ 15 ตำแหน่ง, มีช่วงของข้อมูลกว้างที่สุด decimal (System.Decimal) 16 bytes ±1.0 x 10-28 ถึง ±7.9 x 1028 ความแม่นยำของทศนิยมอยู่ที่ 28 ตำแหน่ง, ช่วงข้อมูลแคบกว่า double แต่ให้ค่าละเอียดมากในส่วนของทศนิยม เหมาะกับการคำนวณเรื่องเงิน
ประเภทข้อมูลที่ไม่ใช่ Numeric Data type ขนาด ค่าของข้อมูล char (System.Char) 2 bytes ตัวอักษรแบบ Unicode มีเครื่องหมาย ' (single quote) คร่อมตัวอักษร เช่น 'A', '1' string (System.String) ไม่แน่นอน ตัวอักษรแบบ Unicode หลายตัวมารวมกัน มีเครื่องหมาย " (double quote) คร่อม เช่น "Hello" bool (System.Boolean) 1 bit มีค่าที่เป็นไปได้ 2 ค่า คือ true และ false
แบบข้อมูลที่สำคัญ ข้อความ string อักขระ char เขียนในเครื่องหมายคำพูดคู่เท่านั้น เช่น "Hello" ถ้าต้องการเครื่องหมายคำพูด ให้นำหน้าด้วย \ เช่น อักขระ char แทนอักษรตัวเดียว เขียนในเครื่องหมายคำพูดเดี่ยว s = "He says \"I love you.\""; Console.WriteLine(s); He says "I love you."
การประกาศตัวแปร: ทบทวน จะต้องระบุแบบชนิด สามารถกำหนดค่าเริ่มต้นไปพร้อมกันได้ int radius; string firstName; double GPA; int radius = 5; string firstName = "john"; double GPA = 2.4;
ลำดับตัวดำเนินการคำนวณ ลำดับ 1 ( ) ลำดับ 2 *, / , % ลำดับ 3 + , – ถ้าลำดับที่เท่ากันให้ทำจากซ้ายไปขวา
ตัวดำเนินการทางคณิตศาสตร์ (operator) Arithmetic Operators + - * / % ++ -- = += -= *= /= %= String Operators + Boolean Operators < <= > >= == != ! && || ^ A = 2+3; B = 4 % 3; X++; ++X; X--; --X; Y += 3; Message = "Hello "+Name If (A=5 && B>6) {…}
นิพจน์ทางคณิตศาสตร์ (operator) Example 11 + 5 16 11 / 2 5.5 11 % 2 1 5.0 % 2.2 0.6 int width, height; width = 10 * 5 + (16 * 12)/5; height = (16 + 5) + 20 % 2;
ลำดับความสำคัญของ Operators ( ) parentheses *, / , % + – If equal precedence, left to right ตัวอย่าง int Width,High; Width=10*5+16*12/5; High= 16+5+20%2;