ผลต่างระหว่างรุ่นของ "พื้นฐานการเขียนโปรแกรม:โครงสร้าง (struct)"

จาก Theory Wiki
ไปยังการนำทาง ไปยังการค้นหา
 
 
(ไม่แสดง 1 รุ่นระหว่างกลางโดยผู้ใช้คนเดียวกัน)
แถว 4: แถว 4:
 
  <nowiki>
 
  <nowiki>
 
struct ชื่อโครงสร้าง {
 
struct ชื่อโครงสร้าง {
ชนิดของตัวแปรที่1 ชื่อของตัวแปรที่1;
+
  ชนิดของตัวแปรที่1 ชื่อของตัวแปรที่1;
ชนิดของตัวแปรที2 ชื่อของตัวแปรที่2;
+
  ชนิดของตัวแปรที2 ชื่อของตัวแปรที่2;
...
+
  ...
ชนิดของตัวแปรที่n ชื่อของตัวแปรที่n;
+
  ชนิดของตัวแปรที่n ชื่อของตัวแปรที่n;
 
};</nowiki>
 
};</nowiki>
 
เช่น
 
เช่น
 
  <nowiki>
 
  <nowiki>
 
struct User{
 
struct User{
char Name[100];
+
  char Name[100];
int Permission;
+
  int Permission;
}</nowiki>
+
};</nowiki>
 
เป็นการประกาศโครงสร้างชื่อ User โดยมีข้อมูลอยู่สองตัวคือ Name ชนิด Array of char ขนาด 100 ตัว กับ Permission ชนิด int
 
เป็นการประกาศโครงสร้างชื่อ User โดยมีข้อมูลอยู่สองตัวคือ Name ชนิด Array of char ขนาด 100 ตัว กับ Permission ชนิด int
 
===================================================
 
===================================================

รุ่นแก้ไขปัจจุบันเมื่อ 13:31, 21 สิงหาคม 2550

ในภาษา C มีวิธีการสร้างชนิดของตัวแปรใหม่ โดยนำกลุ่มข้อมูลหลายๆชนิดมารวมอยู่ด้วยกันเป็นโครงสร้าง(struct) ขึ้น

การdeclareโครงสร้าง(struct)

ก่อนที่จะนำโครงสร้าง(struct)ในภาษาCไปใช้นั้น จำเป็นจะต้องมีการประกาศโครงสร้างนั้นก่อน เพื่อบอกชื่อและชนิดของข้อมูลข้างในของโครงสร้างนั้นๆ โดยเขียน struct ตามด้วย ชื่อของโครงสร้างที่จะใช้ แล้วตามด้วยกลุ่มของข้อมูลข้างในโครงสร้างอยู่ภายในวงเล็บปีกกา( { กับ } ) โดยคั่นด้วย semicolon(;)

struct ชื่อโครงสร้าง {
  ชนิดของตัวแปรที่1 ชื่อของตัวแปรที่1;
  ชนิดของตัวแปรที2 ชื่อของตัวแปรที่2;
  ...
  ชนิดของตัวแปรที่n ชื่อของตัวแปรที่n;
};

เช่น

struct User{
  char Name[100];
  int Permission;
};

เป็นการประกาศโครงสร้างชื่อ User โดยมีข้อมูลอยู่สองตัวคือ Name ชนิด Array of char ขนาด 100 ตัว กับ Permission ชนิด int

=======================================

เราสามารถdeclareตัวแปรชนิดเดียวกันหลายๆตัวได้โดยใช้ตำสั่งดังนี้

ชนิดของตัวแปร ชื่อตัวแปรตัวที่1,ชื่อตัวแปรตัวที่2,...,ชื่อตัวแปรตัวที่n;

เช่น

char a,b,c;

เป็นการdeclareตัวแปร3ตัว ชื่อ a b และ c ตามลำดับ โดยให้ตัวแปรทั้งสามตัวเป็นชนิด char

ชื่อตัวแปร

ชื่อตัวแปรในภาษาCนั้นมีข้อกำหนดว่า ต้องเริ่มด้วย ตัวอักษรภาษาอังกฤษตัวเล็กหรือตัวใหญ่ก็ได้ หรือ Underscore("_") แล้วจะตามด้วย ตัวอักษรภาษาอังกฤษตัวเล็กหรือตัวใหญ่ก็ได้ หรือ Underscore("_") หรือ ตัวเลข กี่ตัวก็ได้ เช่น

  • _
  • a
  • A
  • Data
  • index
  • i32
  • p2d_32

เป็นชื่อตัวแปรที่ถูกต้องตามไวยากรณ์ภาษาC แต่

  • 32x
  • A-D
  • max min

นั้นไม่ถูกต้องตามหลักไวยากรณ์

ชนิดของตัวแปรพื้นฐาน

ตารางตัวแปรพื้นฐานของภาษาC
ชื่อชนิดของตัวแปร ลักษณะของตัวแปร ขนาดของตัวแปร(bytes) ช่วงของข้อมูลที่เก็บได้ หมายเหตุ
byte จำนวนเต็ม 1 -128 - 127
unsigned byte จำนวนเต็ม 1 0 - 255
short int จำนวนเต็ม 2 -32768 - 32767
unsigned short int จำนวนเต็มที่ไม่เป็นลบ 2 0 - 65536
(long )int จำนวนเต็ม 4 -2147483648 - 2147483647()
unsigned (long )int จำนวนเต็มที่ไม่เป็นลบ 4 0 - 4294967295()
float (/single) จำนวนจริง 4
double จำนวนจริง 8
char ตัวอักษร 1 0 - 255

การอ่านค่าจากตัวแปร

ในภาษาCสามารถอ่านค่าจากตัวแปรได้โดยเรียกชื่อตัวแปรนั้นๆ

ชื่อตัวแปร

การใส่ค่าให้ตัวแปร

เราสามารถใส่ค่าให้ตัวแปรได้โดยการเขียนชื่อตัวแปร ตามด้วยเครื่องหมายเท่ากับ แล้ว ตามด้วยค่าที่จะใส่ให้ตัวแปรนั้นๆ

ชื่อตัวแปร = ค่าที่จะใส่ให้;

เช่น

i = 5;

เป็นการกำหนดค่า 5 ให้ตัวแปร i

เราสามารถใส่ค่าให้ตัวแปรหลายๆตัวได้ด้วยคำสั่งดังนี้

ชื่อตัวแปรตัวที่n = ... = ชื่อตัวแปรตัวที่2 = ชื่อตัวแปรตัวที่1 = ค่าที่จะใส่ให้;

เช่น

c = b = a = ' ';

เป็นการกำหนดค่า space(' ') ให้กับตัวแปร a, b และ c ตามลำดับ

ขอบเขตของตัวแปร