สตริงในการเขียนโปรแกรม C คืออะไร?

String Ni Kar Kheiyn Porkaerm C Khux Xari



ในโปรแกรมภาษาซี สตริง เป็นวิธีการแสดงกลุ่มตัวละคร สิ่งเหล่านี้มีความสำคัญเนื่องจากทำให้โปรแกรมเมอร์สามารถทำงานกับข้อมูลที่เป็นข้อความในโปรแกรมของตนได้ ไม่เหมือนกับภาษาโปรแกรมอื่นๆ บางภาษา C ไม่มีประเภทข้อมูลสตริงในตัว สตริงถูกสร้างขึ้นโดยใช้อาร์เรย์อักขระแทน

ในบทความนี้ เราจะอธิบายถึงสตริงที่อยู่ในภาษาซี วิธีการประกาศสตริง และวิธีการนำไปใช้ในการเขียนโปรแกรมภาษาซี

สตริงในการเขียนโปรแกรม C คืออะไร?

สตริงคืออาร์เรย์หนึ่งมิติที่สิ้นสุดโดย ค่าว่าง \0 อักขระ. ใช้สำหรับจัดเก็บอักขระและข้อความ และอักขระแต่ละตัวในสตริงใช้หน่วยความจำหนึ่งไบต์ ไม่เหมือนกับภาษาโปรแกรมอื่น ๆ C ไม่มีชื่อประเภทข้อมูลเป็นสตริง แทนที่จะใช้ชื่อนี้ คุณจะเก็บข้อมูลไว้ใน ประเภทถ่าน







จะประกาศสตริงในการเขียนโปรแกรม C ได้อย่างไร

ในการเขียนโปรแกรม C คุณสามารถประกาศสตริงโดยใช้วิธีการต่อไปนี้:



คุณสามารถกำหนดสตริงด้วยขนาดที่กำหนดไว้ล่วงหน้าได้ ตัวอย่างเช่น สตริงที่มีขนาดจำกัด 8 อักขระควรประกาศเป็น:



ถ่าน ทดสอบ [ 8 ] = 'ยินดีต้อนรับ' ;

อีกวิธีหนึ่งในการกำหนดสตริงใน C โดยไม่ต้องกำหนดขนาดของอาร์เรย์:





ถ่าน ทดสอบ [ ] = 'ยินดีต้อนรับ' ;

คุณยังสามารถกำหนดสตริงโดยใช้อาร์เรย์อักขระที่มีขนาดที่กำหนด:

ถ่าน ทดสอบ [ 8 ] = { 'ใน' , 'มันคือ' , 'ล' , 'ค' , 'โอ' , 'ม' , 'มันคือ' , ' \0 ' } ;

หรือคุณสามารถกำหนดสตริงให้กับอาร์เรย์อักขระโดยเริ่มต้นทีละอักขระโดยไม่กำหนดขนาด:



ถ่าน ทดสอบ [ ] = { 'ใน' , 'มันคือ' , 'ล' , 'ค' , 'โอ' , 'ม' , 'มันคือ' , ' \0 ' } ;

เดอะ อักขระว่าง “\0” แสดงถึงจุดสิ้นสุดของสตริง เพื่อกำหนดตำแหน่งสิ้นสุดของสตริง สิ่งสำคัญคือต้องเพิ่มอักขระ null ที่ส่วนท้ายของอักขระทุกตัว

การแสดงหน่วยความจำของสตริงด้านบนจะเป็นดังนี้:

ดัชนี 0 1 2 3 4 5 6 7
ตัวแปร ใน มันคือ มันคือ \0

ใน C อักขระ null ใช้เพื่อกำหนดตำแหน่งที่สตริงจะสิ้นสุด หากไม่มีอักขระ null ฟังก์ชันเหล่านี้จะยังคงประมวลผลหน่วยความจำต่อไปหลังจากสิ้นสุดสตริง ซึ่งอาจนำไปสู่ลักษณะการทำงานที่ไม่คาดคิดของโค้ด

ต่อไปนี้คือโค้ดโปรแกรมภาษาซีที่สมบูรณ์สำหรับการพิมพ์สตริง

#รวม

นานาชาติ หลัก ( ) {

ถ่าน ทดสอบ [ 8 ] = { 'ใน' , 'มันคือ' , 'ล' , 'ค' , 'โอ' , 'ม' , 'มันคือ' , ' \0 ' } ;

พิมพ์ฉ ( 'ผลลัพธ์คือ: %s \n ' , ทดสอบ ) ;

กลับ 0 ;

}

โปรแกรมด้านบนประกาศการทดสอบอาร์เรย์อักขระที่มีขนาด 8 และกำหนดค่าเริ่มต้นด้วยอักขระ 'ยินดีต้อนรับ' , และ '\0' . จากนั้นจึงใช้ พิมพ์f() ฟังก์ชั่นการพิมพ์สตริงที่เก็บไว้ในการทดสอบ

เอาต์พุต

รับอินพุตของสตริงจากผู้ใช้ในการเขียนโปรแกรม C

คุณยังสามารถรับสตริงอินพุตจากผู้ใช้โดยใช้ สแกน() ฟังก์ชันและคุณต้องกำหนดขนาดอาร์เรย์สตริง ต่อไปนี้คือตัวอย่างโค้ดสำหรับการรับข้อมูลจากผู้ใช้:

#รวม

นานาชาติ หลัก ( )

{

ถ่าน ชื่อ [ 10 ] ;

พิมพ์ฉ ( 'ใส่ชื่อ:' ) ;

สแกน ( '%s' , ชื่อ ) ;

พิมพ์ฉ ( 'ชื่อที่ป้อนคือ: %s' , ชื่อ ) ;

กลับ 0 ;

}

โปรแกรมด้านบนจะแจ้งให้ผู้ใช้ป้อนชื่อ อ่านจากผู้ใช้โดยใช้ฟังก์ชัน scanf() และจัดเก็บไว้ในชื่ออาร์เรย์อักขระ จากนั้นใช้ฟังก์ชัน printf() เพื่อพิมพ์ชื่อที่ป้อน

เอาต์พุต

อ่านสตริงหรือบรรทัดข้อความในการเขียนโปรแกรมภาษาซี

คุณสามารถใช้ fgets() ฟังก์ชันเพื่ออ่านสตริงที่ใช้ในการอ่านบรรทัดข้อความจากสตรีมอินพุตที่ระบุและเก็บไว้ในอาร์เรย์อักขระ โค้ดด้านล่างเป็นตัวอย่างของกรณีดังกล่าว:

#รวม

นานาชาติ หลัก ( ) {

ถ่าน เส้น [ ห้าสิบ ] ;

พิมพ์ฉ ( 'ป้อนบรรทัดข้อความ: ' ) ;

เฟทส์ ( เส้น , ขนาดของ ( เส้น ) , สเตดิน ) ;

พิมพ์ฉ ( 'คุณป้อน: %s' , เส้น ) ;

กลับ 0 ;

}

โปรแกรม C ข้างต้นใช้ fgets() ฟังก์ชันอ่านบรรทัดข้อความที่ผู้ใช้ป้อนจากอินพุตมาตรฐานและเก็บไว้ในอาร์เรย์อักขระชื่อบรรทัด จากนั้นพิมพ์บรรทัดข้อความที่ป้อนโดยใช้ฟังก์ชัน printf()

เอาต์พุต

ฟังก์ชันสตริงที่ใช้กันทั่วไป

สตริงในการเขียนโปรแกรมภาษาซีสนับสนุนฟังก์ชันต่างๆ ที่สามารถใช้ในโปรแกรมเพื่อดำเนินการต่างๆ ได้ ฟังก์ชันบางอย่างที่สตริงใน C รองรับมีดังต่อไปนี้:

ชื่อฟังก์ชัน วัตถุประสงค์ของฟังก์ชั่น
strcat(a1,a2); ผนวกเนื้อหาของสตริง a2 ต่อท้ายสตริง a1 หลังจากดำเนินการแล้ว สตริงผลลัพธ์จะถูกเก็บไว้ใน a1
strcpy(a1,a2); ฟังก์ชันนี้คัดลอกเนื้อหาของสตริง a2 ไปยังสตริง a1 หลังจากการดำเนินการ a1 จะมีสำเนาที่ถูกต้องของ a2 รวมถึงอักขระ null ที่สิ้นสุด
สเตรเลน(a1); ส่งกลับความยาวของสตริง a1 เช่น จำนวนอักขระทั้งหมดที่อยู่ในสตริงก่อนสิ้นสุดสุดท้ายหรืออักขระ null
strchr(a1,ch1); ฟังก์ชันนี้ย้ายตัวชี้ไปยังอักขระ ch1 ที่เกิดขึ้นครั้งแรกในสตริง a1 ฟังก์ชันนี้ส่งคืนตัวชี้ null หากไม่พบ ch1 ในสตริง a1

บันทึก: C ให้ไลบรารีมาตรฐานที่เรียกว่า ซึ่งมีฟังก์ชันต่างๆ สำหรับการทำงานกับสตริงในภาษาซี ฟังก์ชันเหล่านี้รวมถึงการดำเนินการต่างๆ เช่น การคัดลอกสตริง การเชื่อมสตริง และอื่นๆ

บทสรุป

สตริงคือชุดของลำดับเชิงเส้นในโปรแกรม C อักขระแต่ละตัวเก็บหนึ่งไบต์และแสดงด้วยเครื่องหมายอัญประกาศคู่ C ให้ไลบรารีมาตรฐาน และคุณสามารถทำงานที่ซับซ้อนได้อย่างง่ายดายผ่านฟังก์ชันสตริง ในคำแนะนำข้างต้น เราได้กล่าวถึงวิธีต่างๆ สำหรับการประกาศสตริงและการเริ่มต้น เราได้สาธิตการส่งผ่านสตริงไปยังฟังก์ชันด้วยโค้ดตัวอย่าง