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

จาก Theory Wiki
ไปยังการนำทาง ไปยังการค้นหา
 
แถว 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 ตามลำดับ

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