Menyalurkan Atas Aksara Rentetan dalam C
Apabila bekerja dengan rentetan, keperluan sering timbul untuk mengulangi setiap aksara secara individu. Begini cara anda boleh mencapai ini dalam C :
1. Bagi Gelung Berasaskan Julat (C Moden )
std::string str = "..."; for (char& c : str) { // Operations on c here }
Kaedah ini menggunakan gelung berasaskan julat, yang menyediakan cara selamat jenis dan ringkas untuk mengulang elemen mana-mana bekas yang menyokong kaedah begin() dan end().
2. Gelung berasaskan Iterator
std::string str = "..."; for (std::string::iterator it = str.begin(); it != str.end(); ++it) { // Operations on *it here (dereference the iterator) }
Kaedah ini menggunakan iterator untuk melintasi bekas. Iterator menyediakan cara yang fleksibel dan tahap rendah untuk menavigasi melalui struktur data asas.
3. Traditional For Loop
std::string str = "..."; for (std::string::size_type i = 0; i < str.size(); ++i) { // Operations on str[i] here (access the character directly) }
Ini ialah pendekatan klasik untuk gelung, di mana anda mengawal indeks dan mengakses terus aksara menggunakan operator []. Untuk kebanyakan kes penggunaan, gelung berasaskan julat lebih disukai kerana kesederhanaan dan kebolehbacaannya.
4. Rentetan Gaya C yang Ditamatkan Null
Untuk tatasusunan aksara yang ditamatkan nol gaya lama, gunakan gelung berikut:
char str[] = "..."; char* it = str; while (*it) { // Operations on *it here (dereference pointer) ++it; }
Dalam pendekatan ini, anda boleh melakukan pelbagai operasi pada aksara di dalam gelung, seperti manipulasi rentetan, pengiraan aksara atau carian.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mengulangi Aksara Rentetan dalam C?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!