ความยาวสตริง C++

Khwam Yaw String C



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

ในบทความนี้ เราจะพูดถึงวิธีการต่างๆ ในการค้นหาความยาวของสตริงในภาษา C++ เราติดตั้งซอฟต์แวร์ “DEVC++” บนแล็ปท็อปของเราเพื่อรันโค้ด ขั้นแรก เราสร้างไฟล์ใหม่โดยแตะ “Ctrl+N” จากแป้นพิมพ์ หลังจากเขียนโค้ดแล้ว เราจะคอมไพล์และรันโค้ดโดยใช้ 'F11' จากคีย์บอร์ด

ใช้ลูป 'While' และ 'For'

การใช้ while loop ก็เหมือนกับวิธีการทั่วไปในการค้นหาความยาวของสตริงต่างๆ ในการใช้ for และ while loop เราจะปรับตัวแปร “ตัวนับ” เป็น 0 จากนั้นเพิ่มตัวนับนั้นจากจุดเริ่มต้นของสตริงที่กำหนดไปจนถึงความสมบูรณ์ของสตริง (ลงท้ายด้วยอักขระ null)







ในกรณีนี้ เราใช้สองลูป ลูป 'for' และลูป ' While' สามารถกำหนดความยาวของสตริงที่แน่นอนได้ อันดับแรก เราใช้คำสั่งพรีโปรเซสเซอร์ มันมีไฟล์ส่วนหัว สิ่งนี้ถูกใช้เมื่อเริ่มต้นโปรแกรม คำสั่งเหล่านี้ขึ้นต้นด้วยเครื่องหมาย “#”:



#รวม
โดยใช้ เนมสเปซ มาตรฐาน ;
ภายใน หลัก ( )
{
สตริงสตริง = 'การเขียนโปรแกรมด้วยภาพ' ;
ภายใน ฉัน = 0 ,นับ = 0 ;
ในขณะที่ ( STR [ ฉัน ] ! = ' \0 ' )
{
++ ฉัน ;
}
ศาล << 'ความยาวของสตริงโดยใช้ While Loop: ' << ฉัน << สิ้นสุด ;
สำหรับ ( ฉัน = 0 ; STR [ ฉัน ] ! = ' \0 ' ; ฉัน ++ )
{
นับ ++ ;
}
ศาล << 'ความยาวของสตริงโดยใช้ For Loop: ' << นับ << สิ้นสุด ;
กลับ 0 ;
}



ที่นี่เราใช้ไฟล์ส่วนหัว #include จากนั้นเราก็ใช้ฟังก์ชันหลัก ทุกโปรแกรมในภาษา C++ มีฟังก์ชัน main() ซึ่งเป็นส่วนแรกที่จะนำไปใช้เมื่อโค้ดทำงาน





ตอนนี้ เราใช้สตริง 'การเขียนโปรแกรมด้วยภาพ' ตัวแปรที่ใช้สำหรับสตริงนี้คือ “str” นอกจากนี้เรายังนำตัวแปรอีกสองตัวมาด้วย ได้แก่ ตัวแปร “i” และตัวแปร “count” เราประกาศตัวแปร “i” ที่นี่เราใช้ตัวแปรชื่อ 'นับ' เพื่อกำหนดความยาวของสตริง เราเริ่มต้นตัวแปรทั้งสองให้เป็นศูนย์ เราใช้ while loop ที่นี่ แต่ละสตริงลงท้ายด้วย “\0” และเรียกว่าลำดับหลีก “\0” นี้ไม่ใช่อักขระที่โดดเด่น มันเป็นเลขศูนย์ที่แม่นยำ การวนซ้ำ while จะดำเนินการจนกว่าตัวแปร “str[i]” จะไม่เทียบเท่ากับซีรีย์ Escape อีกต่อไป

ที่ส่วนท้ายของลูป จะมีการบวกค่า 'I' เป็น 0 จนกว่าจะพบองค์ประกอบสุดท้ายของสตริงที่กำหนด จากสิ่งนี้ เราจะหาความยาวของสตริงที่กำหนด เราใช้ 'cout' เพื่อพิมพ์ข้อความ 'ความยาวของสตริงโดยใช้ while loop':



ตอนนี้เราใช้วง 'for' ในที่นี้ นิพจน์ “i=0” จะเริ่มต้นตัวแปร “i” เป็น 0 การกำหนดค่าเริ่มต้นจะเสร็จสิ้นทันทีที่ป้อนลูป การวนซ้ำนี้จะดำเนินการจนกว่าจะถึงอักขระตัวสุดท้าย นิพจน์ “i++” จะเพิ่มตัวแปร “i” ทุกครั้งที่ดำเนินการวนซ้ำ ในลูป ตัวแปร “นับ” จะถูกเพิ่มในแต่ละครั้งจนกว่าจะถึงจุดสิ้นสุดของสตริงที่กำหนดไว้ จากนี้เราจะได้ค่าของตัวแปร 'นับ' และตัวแปร 'i' ในที่สุดเราก็ใช้ 'cout' อีกครั้งเพื่อพิมพ์คำสั่ง 'ความยาวของสตริงโดยใช้ for loop'

ใช้ฟังก์ชัน Strlen()

“Cstring” เป็นห้องสมุดและมีฟังก์ชัน strlen() ใน C++ เราใช้ฟังก์ชัน strlen() เพื่อรับความยาวของสตริง นี่คือฟังก์ชันที่สร้างขึ้น ใช้ในสายแบบ C ฟังก์ชันในตัวนี้ส่งกลับความยาวของสตริงที่กำหนดจากอักขระตัวแรกถึงอักขระ null สิ้นสุด:

#รวม
#รวม
โดยใช้ เนมสเปซ มาตรฐาน ;

ภายใน หลัก ( ) {
ถ่าน STR [ ] = “ฉันชอบเล่นแบดมินตัน” ';
int len ​​= strlen(str);
ศาล <<“'
ความยาวของสตริง : : ' << เท่านั้น << endl;
}

ในกรณีนี้ อันดับแรก เราใช้ไฟล์ส่วนหัว “#include ” และเราต้องใช้ไฟล์ส่วนหัว “#include ” ที่จุดเริ่มต้นของโปรแกรมเพื่อรันโค้ดที่เราใช้ฟังก์ชัน strlen() ตัวอย่างโค้ดต่อไปนี้ได้รับสตริงลักษณะ C และอาร์เรย์ถ่าน และใช้ฟังก์ชัน strlen() เพื่อรับความยาว เราใช้สาย “ฉันชอบเล่นแบดมินตัน” เพื่อให้ได้ความยาวของสายนี้

สตริงที่กำหนดมีอักขระ 24 ตัว เราก็ได้เอาต์พุต 24 เราใช้ 'cout' เพื่อพิมพ์ข้อความ 'ความยาวของสตริง'

ใช้วิธี Str.length()

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

#รวม
#รวม
ภายใน หลัก ( )
{
มาตรฐาน :: เชือก STR ( “ภาษาโปรแกรมสมัยใหม่” ) ;
มาตรฐาน :: ศาล << “ความยาวของเชือกคือ” << STR. ความยาว ( ) ;
กลับ 0 ;
}

เราใช้ไฟล์ส่วนหัวสองไฟล์: “#include ” และ “#include ” เราใช้วัตถุ “str” ของคลาส “std::string” จากนั้น เราต้องการทราบความยาวของสตริงสำหรับ 'ภาษาโปรแกรมสมัยใหม่' เราใช้ฟังก์ชัน str.length() มันเป็นฟังก์ชั่นในตัว ฟังก์ชันในตัวอีกตัวที่ใช้ค้นหาความยาวของสตริงคือ str.size() การใช้ทั้งสองฟังก์ชันจะให้ผลลัพธ์ที่เหมือนกัน ฟังก์ชันเหล่านี้ส่งคืนความยาวของสตริงที่กำหนดเป็นไบต์:

สำหรับสตริงของคลาส เราจะใช้วิธีการที่เหมาะสมเสมอ ตัวอย่างเช่น เราใช้ str.length() หรือ str.size() เพื่อค้นหาความยาว โดยทั่วไปการใช้ std::string จะง่ายกว่าเนื่องจากจะจัดสรรหน่วยความจำโดยอัตโนมัติ

บทสรุป

ในบทความนี้ เราได้อธิบายวิธีการต่างๆ ที่ใช้ในการรับความยาวของสตริงที่แตกต่างกันใน C++ สตริง C++ เป็นการจัดเรียงตัวอักษรหรืออักขระที่บันทึกไว้ในที่อยู่หน่วยความจำที่อยู่ติดกัน เพื่อให้ได้ความยาวของสตริงแบบ C เราใช้เมธอด strlen() ในสตริง ตัวสร้างจะตั้งค่าเป็นสตริงลักษณะ C ที่ลงท้ายด้วย “\ 0” ในวิธีสุดท้าย เราใช้ฟังก์ชันในตัว str.length() วิธีนี้ค่อนข้างง่ายที่จะนำไปใช้เนื่องจากเราเพียงแค่เรียกใช้ฟังก์ชันในตัวและรับความยาว เราหวังว่าคุณจะพบว่าบทความนี้มีประโยชน์ ลองอ่านบทความคำแนะนำเกี่ยวกับ Linux อื่นๆ เพื่อดูเคล็ดลับและข้อมูลเพิ่มเติม