70 likes | 133 Views
บทที่ 10. สตริง. สตริง (String). สตริงในภาษา C ก็คือ อาร์เรย์ของตัวอักษร ที่มีข้อมูลชนิดตัวอักษรเรียงกันไป แต่จะต้องมีจุดสิ้นสุดด้วย โดยจะใช้ตัวอักษรวางหรือ Null Character เป็นจุดสิ้นสุดของสตริง ซึ่งจะต่างจากอาร์เรย์ปกติที่ไม่ต้องมีจุดสิ้นสุดของอาร์เรย์. การเก็บข้อมูลของสตริง.
E N D
บทที่ 10 สตริง
สตริง (String) สตริงในภาษา C ก็คือ อาร์เรย์ของตัวอักษร ที่มีข้อมูลชนิดตัวอักษรเรียงกันไป แต่จะต้องมีจุดสิ้นสุดด้วย โดยจะใช้ตัวอักษรวางหรือ Null Character เป็นจุดสิ้นสุดของสตริง ซึ่งจะต่างจากอาร์เรย์ปกติที่ไม่ต้องมีจุดสิ้นสุดของอาร์เรย์ สื่อชุดนี้เป็นลิขสิทธิ์ของสำนักพิมพ์วังอักษรใช้เพื่อการศึกษาเท่านั้น
การเก็บข้อมูลของสตริงการเก็บข้อมูลของสตริง การเก็บข้อมูลของสตริงนั้น จะมีการเก็บข้อมูลอยู่ 2 ส่วน ส่วนแรกจะเป็นข้อมูลตัวอักษรโดยเก็บเรียงกันไป และส่วนที่ 2 จะเก็บจุดสิ้นสุดของสตริง ซึ่งจุดสิ้นสุดของสตริงจะใช้ Null Character หรือ ‘\0’ จุดเริ่มของสตริง จุดสิ้นสุดของสตริง สื่อชุดนี้เป็นลิขสิทธิ์ของสำนักพิมพ์วังอักษรใช้เพื่อการศึกษาเท่านั้น
การประกาศตัวแปรสตริงและการกำหนดค่าเริ่มต้นการประกาศตัวแปรสตริงและการกำหนดค่าเริ่มต้น • ความจริงภาษา C จะมีไม่ชนิดข้อมูลสตริง แต่มันจะใช้อาร์เรย์ของตัวอักษรแทน ในการประกาศตัวแปรสตริงนั้น จะคำนึงความยาวของข้อมูล และสิ่งที่ลืมเสียไม่ได้ คือ จะต้องมีพื้นที่อีก 1 ในการใช้เก็บจุดสิ้นสุดของสตริงด้วย เพราะภาษา C จะมีข้อบังคับอยู่ว่า ไบต์สุดท้ายจะเป็นส่วนที่เก็บจุดสิ้นสุดของสตริงเสมอ • ผู้ใช้มีข้อมูลขนาด 10 ไบต์หรือ 10 ตัวอักษร ผู้ใช้จะต้องกำหนดขนาดของตัวแปรสตริงตัวนั้นเป็น 11 ไบต์ • char str[11] ; สื่อชุดนี้เป็นลิขสิทธิ์ของสำนักพิมพ์วังอักษรใช้เพื่อการศึกษาเท่านั้น
สตริงกับพอยเตอร์ • ถ้าผู้ใช้ต้องการที่จะประกาศตัวแปรพอยเตอร์ของสตริง ก็สามารถทำได้เหมือนกับการประกาศพอยเตอร์ตามปกติ แต่จะสามารถใช้ได้กับชนิดข้อมูลที่เป็นตัวอักษรหรือ Char เท่านั้น ในการประกาศพอยเตอร์และกำหนดค่าเริ่มต้น สามารถทำได้ดังนี้ • char *pStr = “Good Day!”; สื่อชุดนี้เป็นลิขสิทธิ์ของสำนักพิมพ์วังอักษรใช้เพื่อการศึกษาเท่านั้น
ฟังก์ชัน Input / Output ของสตริง • ฟังก์ชัน Input : ฟังก์ชัน scnaf() นั่นเอง แต่จะใช้รูปแบบข้อมูลเป็น %s (ซึ่งจะใช้ทั้งการ Input และ Output) • scanf(“%s”, month); • char month[10]; scanf(“%9s”, month); • ฟังก์ชัน Output : ฟังก์ชันในการ printf ซึ่งในภาษา C นั้น สามารถที่จะกำหนดให้ข้อมูลของสตริง เมื่อเวลาจะพิมพ์แสดงนั้น จะให้อยู่ติดขอบซ้ายหรือขอบขวาก็ได้ โดยใช้เครื่องหมาย – และต้องกำหนดขนาดความยาวของส่วนที่จะพิมพ์ด้วย สื่อชุดนี้เป็นลิขสิทธิ์ของสำนักพิมพ์วังอักษรใช้เพื่อการศึกษาเท่านั้น
ฟังก์ชันอื่นที่ใช้กับสตริงฟังก์ชันอื่นที่ใช้กับสตริง • ความยาวสตริง (strlen) • คัดลอกสตริง (strcpy, strncpy) • เปรียบเทียบสตริง (strcmp, strncmp) • ต่อสตริง (strcat, strncat) สื่อชุดนี้เป็นลิขสิทธิ์ของสำนักพิมพ์วังอักษรใช้เพื่อการศึกษาเท่านั้น