Menentukan Akhiran Rentetan dalam C
Dalam C , menentukan sama ada rentetan mempunyai akhiran tertentu memerlukan pendekatan yang cekap dan boleh dipercayai. Untuk menangani keperluan ini, artikel itu meneroka cara yang berkesan untuk memastikan maklumat ini.
Mengenal pasti Pengakhiran Rentetan
Untuk menentukan sama ada rentetan berakhir dengan subrentetan tertentu, C menawarkan fungsi string::compare(). Kaedah ini membolehkan perbandingan julat aksara yang ditentukan dalam rentetan dengan rentetan lain yang disediakan.
Pelaksanaan
Coretan kod berikut menunjukkan penggunaan rentetan::compare () untuk pengenalpastian akhiran:
<code class="cpp">#include <iostream> bool hasEnding(std::string const &fullString, std::string const &ending) { if (fullString.length() >= ending.length()) { return (0 == fullString.compare(fullString.length() - ending.length(), ending.length(), ending)); } else { return false; } }</code>
Fungsi ini menerima dua parameter rentetan, rentetan penuh untuk diperiksa dan kemungkinan pengakhiran. Ia mengira jika panjang rentetan penuh memenuhi atau melebihi panjang penghujung dan kemudian membandingkan bahagian rentetan penuh yang berkaitan dengan penghujung menggunakan rentetan::compare().
Penggunaan Contoh
Contoh yang disediakan menunjukkan aplikasi fungsi hasEnding():
<code class="cpp">int main() { std::string test1 = "binary"; std::string test2 = "unary"; std::string test3 = "tertiary"; std::string test4 = "ry"; std::string ending = "nary"; std::cout << hasEnding(test1, ending) << std::endl; std::cout << hasEnding(test2, ending) << std::endl; std::cout << hasEnding(test3, ending) << std::endl; std::cout << hasEnding(test4, ending) << std::endl; return 0; }</code>
Output kod ini memaparkan hasil perbandingan akhiran untuk rentetan ujian yang disediakan.
Atas ialah kandungan terperinci Bagaimana untuk menentukan sama ada rentetan mempunyai akhiran khusus dalam C?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!