Birçok kez karmaşık programlama yaparken, bir kişinin bir diziyi kopyalaması veya önceki dizide kullanılan hemen hemen her şeyi içeren yeni bir dizi oluşturması gerekir, bu manuel olarak yapılabilir ancak bu zaman alan bir süreçtir. Bu nedenle, kopyalama işini sizin yerinize yapabilecek bir işlev arıyorsanız, bu makalenin yönergelerini izleyin.
Bir Diziyi Kopyalamak için C++'da Bir Kopyalama İşlevi Var mı?
Evet, C++ bir diziyi kopyalama işlevine sahiptir ve herhangi bir C++ kodunda kullanılabilir. Ancak, kopyalama işlevini kullanmak için bir başlık dosyası olduğunu unutmayın. '
Kopyalama işlevinin kullanılacağı sözdizimi aşağıda belirtilmiştir:
Sözdizimi
Sözdiziminde, kopyalama işlevinin argümanları, kopyalanması gereken diziler ve dizinin hedefidir:
std::kopyala ( Birinci, son , sonuç )
copy() işlevi üç parametreye sahiptir:
-
- ilk- elemanların kopyalanacağı dizi
- last- dizinin son dizinini, öğeleri kopyalamak istediğimiz yere işaret eder
- sonuç- Öğeleri kopyalamak istediğimiz yeni diziyi işaret eder
C++ Kodunda copy() İşlevi Nasıl Kullanılır
Kullanarak bir diziyi kopyalamak için tüm işlem kopyala() işlevi aşağıda belirtilen adımlarda ele alınmıştır:
Aşama 1 : Öncelikle herhangi bir C++ kodu için her zaman yaptığınız gibi başlık dosyalarını içe aktarın, kullanmayı unutmayın kopyala() işlev,
#include
Adım 2: Ardından ana işlevi() başlatın, ana kodun tamamı bu ana işlevin içinde olacaktır:
{
geri dönmek 0 ;
}
Aşama 3: Şimdi bundan sonraki adımlarda copy komutunu kullanarak kopyalayacağımız bir dizi oluşturalım. Burada, dizimi şu şekilde adlandırdım: kuruluş[ ] orijinal diziyi temsil etmek için başka herhangi bir isim de kullanabilirsiniz. Dizimde 7 öğe var, bu yüzden bir değişken de bildirdim sayı=7 bir dizi içindeki öğelerin sayısına bağlı olarak değiştirilebilir:
int org [ ] = { 2 , 9 , 8 , 1 , 3 , 6 , 3 } ;
Adım 4: Şimdi org[ ] dizisinin kopyalanacağı bir dizi olan bir dest[ ] dizisi tanımladım. Bundan sonra son olarak kopyalama işlevini kullanın, ilk argüman orijinal dizidir, ikincisi dizi + n'dir (dizinin boyutudur), son olarak dest tüm öğelerin kopyalanacağı dizidir:
std::kopyala ( org, org+n, hedef ) ;
Adım 5 : Şimdi bir for döngüsü çalıştırarak dizileri yazdıracağım. Aşağıdaki for döngüsü kuruluş dizisini kopyalamaktır:
için ( int Ben = 0 ; Ben < N; ben++ )
std::cout << org [ Ben ] << '' ;
std::cout << '\N' ;
Adım 6 : Benzer şekilde, kopyalanan diziyi yazdırmak için başka bir for döngüsü kullandım:
std::cout << 'Dizi Kopyası: ' ;için ( int Ben = 0 ; Ben < N; ben++ )
std::cout << başlangıç [ Ben ] << '' ;
std::cout << '\N' ;
Not: Sadece anlamak için her iki diziyi de yazdırdım/gösterdim ama bu zorunlu değil.
Tam kod aşağıda verilmiştir:
kod
#include#include
int ana ( ) {
sabit int n = 7 ;
int org [ ] = { 2 , 9 , 8 , 1 , 3 , 6 , 3 } ;
int hedef [ N ] ;
std::kopyala ( org, org+n, hedef ) ;
std::cout << 'Orijinal Dizi: ' ;
için ( int Ben = 0 ; Ben < N; ben++ )
std::cout << org [ Ben ] << '' ;
std::cout << '\N' ;
std::cout << 'Dizi Kopyası: ' ;
için ( int Ben = 0 ; Ben < N; ben++ )
std::cout << başlangıç [ Ben ] << '' ;
std::cout << '\N' ;
geri dönmek 0 ;
}
Şimdi çıktıyı görüntülemek ve dizinin başarıyla kopyalandığını doğrulamak için kodu çalıştıralım:
Çıktı
Çözüm
evet var kopyala() dizileri kopyalamak için C++ işlevi. Kullanmak kopyala() işlev sadece içerir