Sructure คือ โครงสร้างข้อมูลที่นําเอาข้อมูลที่มีชนิดข้อมูลต่างกัน แต่มีความสัมพันธิ์ของข้อมูล มาเก็บเข้าไว้ภายในโครงสร้างเดียวกัน ต้วอย่างเช่น การเก็บข้อมูลของพนักงานบริษัทแห่งหนึ่งที่จะต้องเก็บ ชื่อ, นามสกุล, แผนก, และเงินเดือน โดยการเก็บ ชื่อ, นามสกุล, แผนก, และตําแหน่งเป็น String และทําการเก็บเงินเดือนเป็นจํานวนจริง จะเขียนได้ดังนี้
struct employee{
char name[100];
char laseName[100];
char dept[100];
char position[100];
float salary;
};
struct employee emp;
จะเห็นว่าชนิดต้องมูลของพนักงานบริษัทแต่ละคน ไม่ว่าจะเป็นชือ, นามสกุล, แผนก, ตําแหน่ง, หรือเงินเดือน แม้จะเป็นชนิดข้อมูลที่แตกต่างกัน แต่สามารถเก็บไว้ใน Structure เดียวกันได้
รูปแบบการประกาศข้อมูลแบบ structure สามารทําได้ 2 รูปแบบคือ แบบที่ 1
struct ชื่อตัวแปรสตรัคเจอร์{
ชนิดข้อมูลตัวที่1 ชื่อตัวแปบตัวที่1
ชนิดข้อมูลตัวที่2 ชื่อตัวแปบตัวที่2
ชนิดข้อมูลตัวที่3 ชื่อตัวแปบตัวที่3
...
ชนิดข้อมูลตัวที่n ชื่อตัวแปบตัวที่n
} ชื่อตัวแปรที่ใช้อ้างอิงสตรัคเจอร์;
ตัวอย่าง
struct student{
char student_id;
int point;
float grade;
}std;
แบบที่ 2
struct ชื่อตัวแปรสตรัคเจอร์{
ชนิดข้อมูลตัวที่1 ชื่อตัวแปบตัวที่1
ชนิดข้อมูลตัวที่2 ชื่อตัวแปบตัวที่2
ชนิดข้อมูลตัวที่3 ชื่อตัวแปบตัวที่3
...
ชนิดข้อมูลตัวที่n ชื่อตัวแปบตัวที่n
};
struct ชื่อตัวแปรที่ใช้อ้างอิงสตรัคเจอร์;
ตัวอย่าง
struct student{
char student_id;
int point;
float grade;
};
struct student std;
การกําหนดค่าเริ่มต้นให้กับสมาชิกของ Structure นั้น มีหลักการคล้ายกับการกําหนดค่าเริ่มต้นให้กับตัวแปร Array คือจะต้องกําหนดค่าเริ่มต้นไว้ใน { } และแยกแต่ละค่าด้วย ,(Comma) เช่น
struct person{
char name[100];
int age;
};
struct person ps = {"Thiti", 20};
รูปแบบการเข้าถึงสมาชิคของ Structure คือ
ชื่อตัวแปรอ้างอิงสตรัคเจอร์.สมาชิก
เช่น
struct person{
char name[100];
int age;
};
struct person ps = {"Thiti", 20};
printf("Name: %s", ps.name); //จะได้ชื่อออกมา
printf("Age: %s", ps.age); //จะได้อายุออกมา
ps.age = 15; //กําหนดค่า 15 ให้กับสมาชิก age
จากตัวอย่างจะดึงข้อมูลของสมาชิก name และ age ออกมาจากตัวแปร structure ps และกําหนดค่า 15 ให้กับตัวแปร age
สวัสดีครับ ในบทความนี้ก็เป็น EP.11 แล้วนะครับ โดยเนื้อหาจะเป็นเรื่องเกี่ยวกับ Panic คืออะไร ใช้ทําอะไร และมีวิธีการใช้อย่างไรสําหรับท่านใดที่ยังไม่ได้อ่าน EP.10 ท่านสามารถกลับไปอ่านก่อนได้นะครับที่นี่ Go EP.10 Defer ในภาษา Goมาเริ่มเรียนรู้ไปด้วยกันตามหัวข้อด้านล่างเลยครับ
สวัสดีครับจากบทความตอนที่แล้ว "เริ่มต้นใช้ Docker Swarm" เราได้เรียนรู้พื้นฐานการใช้งาน Docker Swarm กันไปแล้ว ในบทความนี้เราจะมาต่อยอดโดยนํา Docker Compose มาใช้ใน Docker Swarm เพราะในงานจริงเราจะได้ทํางานได้ง่ายและสะดวกขึ้น ก่อนที่จะอ่านบทความนี้ควรจะต้องมีความรู้ในเรื่องของ Docker Swarm และ Docker Compose ก่อน กลับไปอ่านได้ที่นี่
วิธีหาขนาดของข้อความ ว่ามีขนาดความกว้าง และความสูงกี่ Pixel ทําได้ด้วยตัวอย่าง Function นี้