C++'ta string::erase() kullanımı

Merhabalar herkese tekrardan. Uzun zamandır bu blog sayfası etkileşim almıyor, ben de yeni bir blog gireyim dedim.


Bugünkü konumuz, C++ usulü bir stringten belirli karakter(ler)i silmek olacak. Hazırsanız başlayalım.


Öncelikle std::string::erase()'in kullanımına bakalım.

string& erase (size_t pos = 0, size_t len = npos);

"pos" : Bu parametre, karakterleri silmeye nereden başlayacağınızı belirtir. Eğer string'in uzunluğundan büyükse, "std:: out_of_range" hatası alırsınız.
"len" : Bu parametrede ise, nereye kadar sileceğimizi gireceğiz. Eğer kendisine parametre vermezseniz, otomatik olarak "npos" parametresini alır.
"npos" : String sonuna kadar olan tüm karakterleri gösterir.


Kullanımını detaylıca incelediğimize göre, örnek bir program yazabiliriz.

C++:
#include <iostream>
#include <string>

int main(){
  
        std::string metin = "Technopat";
        std::cout<<"Metinde yazan : "<<metin<<std::endl;
        metin.erase(6); //Bildiğiniz gibi, 0'dan saymaya başlarız programcılar olarak. 0 ve 5 arasını ellemeyip, 6. elemandan başlayarak metin değişkeninin sonuna kadar olan tüm karakterleri temizleyecek.
        std::cout<<"Guncellendikten sonra metinde yazan : "<<metin<<std::endl;
  
  
    return 0;
}

Ve derleyip çalıştıralım.

Çıktısı şöyle olacaktır:



Gördüğünüz gibi, "Technopat" olan string'imizi, "Techno" olarak güncellemiş bulunmaktayız.




Sizden de örnek programlar beklemekteyim.

Yorumlar

int main(int argc, char** argv) öncesinde using namespace std; kullanırsanız std:: kullanmak zorunda kalmazsınız. O özellik birden çok alan adı gereken projelerde kullanılması ve fonksiyonların karışmaması için var.
 
Bu siteyi kullanmak için çerezler gereklidir. Siteyi kullanmaya devam etmek için çerezleri kabul etmelisiniz. Daha Fazlasını Öğren.…