วิธีการนับตัวอักษรในสตริงด้วย strcspn() ในการเขียนโปรแกรมภาษาซี

Withi Kar Nab Taw Xaks R Ni String Dwy Strcspn Ni Kar Kheiyn Porkaerm Phas A Si



ในภาษาการเขียนโปรแกรม C การนับอักขระในสตริงเป็นงานทั่วไปที่โปรแกรมเมอร์อาจพบเจอ วิธีการนับอักขระในสตริงวิธีหนึ่งคือการใช้ฟังก์ชัน strcspn() . เดอะ strcspn() ฟังก์ชันเป็นฟังก์ชันสตริงในตัวในไลบรารี C . ใช้เพื่อค้นหาความยาวของสตริงย่อยเริ่มต้นที่ยาวที่สุดในหนึ่งสตริงที่ไม่มีอักขระใดๆ จากสตริงอื่น ก่อนที่อักขระใดๆ จากลำดับที่กำหนดไว้ล่วงหน้าจะปรากฏขึ้น ฟังก์ชันนี้จะนับอักขระในสตริง ดังนั้นจึงส่งคืนความยาวของส่วนแรกของสตริงที่ไม่มีสมาชิกของชุดที่ระบุ

คำแนะนำเชิงลึกเกี่ยวกับการใช้ strcspn() เพื่อนับอักขระในสตริงมีอยู่ในบทความนี้







ไวยากรณ์ของฟังก์ชัน strcspn()

ประการแรก มากำหนดไวยากรณ์ของ strcspn() การทำงาน. ฟังก์ชันใช้สองอาร์กิวเมนต์ซึ่งเป็นสตริงที่จะเปรียบเทียบ ไวยากรณ์เป็นดังนี้:



size_t strcspn ( ถ่าน * string1, const อักขระ * สตริง 2 ) ;


ในกรณีนี้ string1 แทนสตริงที่เราต้องการตรวจสอบอักขระ และ string2 แทนชุดของอักขระที่เราต้องการนับ



วิธีการนับตัวอักษรในสตริงด้วย strcspn() ในการเขียนโปรแกรมภาษาซี

หากเราต้องการนับจำนวนอักขระในสตริงก่อนช่องว่างแรก เราสามารถใช้ strcspn() ฟังก์ชั่นที่แสดงด้านล่าง:





#รวม
#รวม

int หลัก ( )
{
สตริงถ่าน [ ] = 'คำแนะนำลินุกซ์!' ;
เลนส์ int;
len = strcspn ( สตริง ' ' ) ;
พิมพ์ฉ ( 'จำนวนอักขระก่อนช่องว่างแรกคือ: %d' , เท่านั้น ) ;
กลับ 0 ;
}


ในโค้ดข้างต้น เราส่งผ่านสตริง “Linux Hint!” เป็นสตริงและชุดอักขระ ” ” (ช่องว่างเดียว) จำนวนอักขระที่ปรากฏก่อนที่ช่องว่างจะถูกส่งกลับโดย strcspn() การทำงาน.

เอาต์พุต




เรายังสามารถนับจำนวนอักขระในสตริงก่อนที่อักขระหลายตัวจากชุดที่ระบุจะปรากฏขึ้น ตัวอย่างเช่น หากเราต้องการนับจำนวนอักขระในสตริงก่อนที่จะมีเครื่องหมายอัศเจรีย์ปรากฏขึ้น เราสามารถใช้รหัสต่อไปนี้:

#รวม
#รวม

int หลัก ( )
{
สตริงถ่าน [ ] = 'คำแนะนำลินุกซ์!' ;
เลนส์ int;
len = strcspn ( สตริง '!' ) ;
พิมพ์ฉ ( 'จำนวนอักขระที่อยู่หน้าเครื่องหมายอัศเจรีย์คือ: %d' , เท่านั้น ) ;
กลับ 0 ;
}


ในโค้ดข้างต้น เราส่งผ่านสตริง “Linux Hint!” เป็น string1 และอักขระกำหนด “!” (เครื่องหมายอัศเจรีย์). เดอะ strcspn() ฟังก์ชันคำนวณจำนวนอักขระก่อนเครื่องหมายอัศเจรีย์ตัวแรก

เอาต์พุต

บทสรุป

เดอะ strcspn() ฟังก์ชันเป็นฟังก์ชันที่เรียบง่ายแต่ทรงพลังที่ช่วยให้เราสามารถนับอักขระในสตริงตามชุดอักขระที่ระบุ เมื่อใช้ฟังก์ชันนี้ เราสามารถเขียนโค้ดที่มีประสิทธิภาพและรัดกุมเพื่อจัดการกับสตริงในภาษา C