İki veya daha fazla dizeyi birleştirmenin yoluna dize birleştirme denir. Herhangi bir programlama dili için çok yaygın bir görevdir. Bazı programlama dilleri belirli bir operatör kullanır, bazı programlama dilleri yerleşik işlevi kullanır ve bazı programlama dilleri, dize değerlerini birleştirmek için hem operatör hem de yerleşik işlevi kullanır. Dize birleştirme, '+' operatörü ve C++'daki farklı yerleşik işlev türleri kullanılarak yapılabilir. C++'da dizeleri birleştirmek için '+' operatörünün ve farklı yerleşik işlevlerin kullanımları bu eğitimde açıklanmıştır.
Ön koşul:
Bu öğreticinin örneklerini kontrol etmeden önce, sistemde g++ derleyicisinin kurulu olup olmadığını kontrol etmelisiniz. Visual Studio Code kullanıyorsanız, yürütülebilir kodu oluşturmak için C++ kaynak kodunu derlemek için gerekli uzantıları yükleyin. Burada, C++ kodunu derlemek ve yürütmek için Visual Studio Code uygulaması kullanılmıştır.
Dize birleştirme için '+' operatörünü kullanma:
'+' operatörünü kullanmak, iki diziyi birleştirmenin en basit yoludur. '+' operatörünü kullanarak iki dizeyi birleştirmek için aşağıdaki kodla bir C++ dosyası oluşturun. Kodun başında iki boş dize değişkeni bildirildi. Bu değişkenler, kullanıcıdan alınan girdiyi saklamak için kullanılmıştır. Ardından, daha sonra yazdırılan yeni dizeyi oluşturmak için iki değer birleştirilir.
//Gerekli kitaplıkları dahil et
#Dahil etmek
#Dahil etmek
intana()
{
//İki string değişkeni tanımla
saat::sicimstrData1='', strData2='';
//Kullanıcıdan iki string değeri al
saat::maliyet<<'İlk dizeyi girin:';
saat::cin>>strData1;
saat::maliyet<<'İkinci dizeyi girin:';
saat::cin>>strData2;
// Dize değerlerini birleştir
saat::sicimbirleştirmek=strData1+strData2;
//Birleştirilmiş dize değerini yazdır
saat::maliyet << 'Birleştirilmiş dize:' <<birleştirmek<< ' ';
dönüş 0;
}
Çıktı:
Kullanıcı şunu yazarsa ' Merhaba ' ve ' Dünya ' kodu çalıştırdıktan sonra giriş değerleri olarak, aşağıdaki çıktı görünecektir.
Dize birleştirme için bir döngü kullanma:
Bir döngü kullanmak, char dizisinin dize değerlerini birleştirmenin başka bir yoludur. İki karakter dizisi değişkeninde depolanan dize değerlerini birleştirmek için 'for' döngüsünün kullanımını kontrol etmek için aşağıdaki kodla bir C++ dosyası oluşturun. Kodda iki dize değişkeni ve 100 öğeden oluşan iki karakter dizisi bildirildi. Girdi değerleri dize değişkenlerinde depolanacak ve strcpy() işlevi dize değerlerini char dizilerinde depolayacaktır. Daha sonra, ilk karakter dizisinin uzunluğu sayıldı ve 'for' döngüsünde, ilk karakter dizisinin sonuna ikinci karakter dizisinin içeriğini eklemek için kullanıldı. İlk karakter dizisinin değerleri, ikinci karakter dizisinin tüm öğeleri birleştirildikten sonra yazdırılacaktır.
//Gerekli kitaplıkları dahil et#Dahil etmek
#Dahil etmek
kullanarak ad alanısaat;
intana()
{
//İki string değişkeni tanımla
karakterchrData1[100], chrData2[100];
// Bir dize değişkeni bildir
dize strData1, strData2;
//İlk dize verilerini alın ve karakter dizisine dönüştürün
maliyet<<'İlk dizeyi girin:';
cin>>strData1;
strcpy(chrData1, strData1.c_str());
//İkinci dize verilerini alın ve karakter dizisine dönüştürün
maliyet<<'İkinci dizeyi girin:';
cin>>strData2;
strcpy(chrData2, strData2.c_str());
//İlk karakter dizisinin toplam elemanını say
intuzun= strlen(chrData1);
/ *
Tüm öğeleri eklemek için döngüyü yineleyin
ikinci karakter dizisi
ilk karakter dizisine
* /
için(intben=0;ben< boyutu(chrData2);ben++)
{
chrData1[uzun] =chrData2[ben];
uzun++;
}
//Birleştirilmiş çıktıyı yazdır
maliyet << 'Birleştirilmiş dize:' <<chrData1<<son;
dönüş 0;
}
Çıktı:
Kullanıcı kodu çalıştırdıktan sonra giriş değerleri olarak 'Linux' ve 'İpucu' yazarsa, aşağıdaki çıktı görünecektir.
Dize birleştirme için strcat() işlevini kullanma:
NS strcat() iki dize değerini birleştirmek için yerleşik bir işlevdir. Argüman değerleri ve dizilerin birleştirilmiş değeri olarak iki karakter dizisi alır. Bu fonksiyonun sözdizimi aşağıda verilmiştir.
Sözdizimi:
sokak kedisi(karakter *dizi1,karakter *dizi2)strcat() işlevini kullanarak iki karakter dizisinin değerini birleştirmek için aşağıdaki kodla bir C++ dosyası oluşturun. Kullanıcıdan alınan giriş değerlerini saklamak için kodda iki karakter dizisi bildirilmiştir. Daha sonra, iki karakter dizisinin birleştirilmiş değerini yazdırmak için strcat() işlevi kullanılmıştır.
//Gerekli kitaplıkları dahil et#Dahil etmek
#Dahil etmek
kullanarak ad alanısaat;
intana()
{
//İki string değişkeni tanımla
karakterchrData1[100], chrData2[100];
//İlk string verisini al
maliyet<<'İlk dizeyi girin:';
cin.hat almak(chrData1,100);
//İkinci dize verilerini al
maliyet<<'İkinci dizeyi girin:';
cin.hat almak(chrData2,100);
//Birleştirilmiş dizeyi yazdır
maliyet << 'Birleştirilmiş Dize:' << sokak kedisi(chrData1, chrData2) <<son;
maliyet <<chrData1;
dönüş 0;
}
Çıktı:
Kullanıcı şunu yazarsa ' C++ ' ve ' Programlama ' kodu çalıştırdıktan sonra giriş değerleri olarak, aşağıdaki çıktı görünecektir.
Dize birleştirme için append() işlevini kullanma:
NS ekle() iki dize değerinin birleştirilmiş dizesini döndüren ve bağımsız değişkende bir dize alan başka bir yerleşik işlevdir. Bu işlevin sözdizimi aşağıda verilmiştir.
Sözdizimi:
sicim&sicim::eklemek ( constsicim&P)append() işlevini kullanarak iki dize değerini birleştirmek için aşağıdaki kodla bir C++ dosyası oluşturun. Kodda dört dizgili değişkenler bildirildi. Bir dize değişkeni, birleştirilmiş dize değerini depolar ve append() işlevi kullanılarak birleştirilmiş diğer üç değişkende üç dize değeri depolanır. Append() işlevi, üç dize değişkeninin değerlerini birleştirmek ve değerleri daha sonra yazdırılacak olan outstr değişkenine eklemek için kodda üç kez çağrıldı.
//Gerekli kitaplıkları dahil et#Dahil etmek
kullanarak ad alanısaat;
intana()
{
//Çıkış değişkenini bildir
dize çıkışı;
//Üç dize değeri atayın
dize dize1= 'BEN';
dize dize2= ' Beğenmek';
dize dize3= ' Programlama.';
//Üç dizeyi çıktı değişkenine ekle
dışarıeklemek(dize1);
dışarıeklemek(dize2);
dışarıeklemek(dize3);
//Birleştirilmiş çıktıyı yazdır
maliyet << 'Birleştirilmiş Dize:' <<dışarı<< ' ';
dönüş 0;
}
Çıktı:
Yukarıdaki kodu çalıştırdıktan sonra aşağıdaki çıktı görünecektir.
Çözüm:
Bu öğreticide dört basit örnek kullanılarak C++'da dizeleri birleştirmenin farklı yolları açıklanmıştır. Dize değerleri, yerleşik bir işlev kullanılarak ve C++'ta yerleşik bir işlev kullanılmadan birleştirilebilir. C++ programcısı, dize değerlerini birleştirmek için burada gösterilen yollardan herhangi birini kullanabilir.