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
Singleton pattern เป็น Design pattern ที่ใช้จํากัดจํานวนของอ็อบเจกต์ที่ถูกสร้างในขณะที่โปรแกรมทํางาน จะมีประโยชน์ในกรณีที่ระบบงานต้องการบังคับให้มีแค่อ็อบเจกต์เดียวเพื่อไม่ให้เกิดการซํ้าซ้อนกันเช่น Class ที่ใช้ในการควบคุม Hardware 1 ตัว ในการควบคุม Hardware 1 ตัวถ้าสร้างอ็อบเจกต์เพื่อควบคุมขึ้นมาหลายตัวอาจจะทําให้เกิดปัญหาในการควบคุม Hardware ได้
วิธีทําให้ ubuntu เห็น NTFS และ ทํา auto mountในบทความนี้ผมจะมาแนะนําวิธีการทําให้ ubuntu ใช้งาน file system ที่เป็นแบบ NTFS ได้ และจะทําการ mount drive โดยอัตโนมัติ มาเริ่มกันเลยครับ
สําหรับคนที่ใช้ plugin Google Analytics Post Pageviews ใน wordpress จะเจอปัญหาเมื่อ url ของ post เป็นภาษาไทย(unicode) plugin จะไม่สามารถดึงข้อมูลจาก google analytic ออกมาได้ ทําให้ views เป็น 0 วิธีการแก้ไขคือ