C++ Küçülüp büyüyebilen dinamik ayrılmış dizi nasıl uygularım?

dogan341

Gold Üye
Katılım
2 Şub 2021
Mesajlar
201
Beğeniler
20
Yaş
23
"Küçülebilen ve büyüyebilen dinamik olarak ayrılmış bir dizi uygulayın" Arkadaşlar merhaba bu soruyu çözebilir misiniz c dilinde ihtiyacım var da ? Tam olarak soruyu ve ne yapacagımı da anlamadım kodu atarsanız sevinirim.
 
"Küçülebilen ve büyüyebilen dinamik olarak ayrılmış bir dizi uygulayın" Arkadaşlar merhaba bu soruyu çözebilir misiniz c dilinde ihtiyacım var da ? Tam olarak soruyu ve ne yapacagımı da anlamadım kodu atarsanız sevinirim.
C dilinde dinamik dizi için bi kütüphane bulunmuyor. c++da Mevcut fakat sen C dilinde istiyorsun. Soruyu da tam olarak anlamadım ama umarım işine yarar.
C++:
#include <iostream>
#include <vector>

int main()
{
    std::vector<int> intVec;

    int val = 0;
    for (int i = 0; i < 16; i++)
    {
        intVec.push_back(val++);
        std::cout << "deger: " << intVec.size() << " kapasite: " << intVec.capacity() << "\n";
    }

    /*
      deger: 1 kapasite: 1
      deger: 2 kapasite: 2
      deger: 3 kapasite: 4
      deger: 4 kapasite: 4
      deger: 5 kapasite: 8
      deger: 6 kapasite: 8
      deger: 7 kapasite: 8
      deger: 8 kapasite: 8
      deger: 9 kapasite: 16
      deger: 10 kapasite: 16
    */
}
 
C dilinde dinamik dizi için bi kütüphane bulunmuyor. c++da Mevcut fakat sen C dilinde istiyorsun. Soruyu da tam olarak anlamadım ama umarım işine yarar.
C++:
#include <iostream>
#include <vector>

int main()
{
    std::vector<int> intVec;

    int val = 0;
    for (int i = 0; i < 16; i++)
    {
        intVec.push_back(val++);
        std::cout << "deger: " << intVec.size() << " kapasite: " << intVec.capacity() << "\n";
    }

    /*
      deger: 1 kapasite: 1
      deger: 2 kapasite: 2
      deger: 3 kapasite: 4
      deger: 4 kapasite: 4
      deger: 5 kapasite: 8
      deger: 6 kapasite: 8
      deger: 7 kapasite: 8
      deger: 8 kapasite: 8
      deger: 9 kapasite: 16
      deger: 10 kapasite: 16
    */
}
Ben de anlamadım da su sekılde olmalıymıs cevirisi Ayrılan ve kullanılan nesneleri izlemek için iki değişken tutun. Başlangıçta 10 nesne tahsis ettiyseniz = 10; ve kullanılan = 0; Dizinize her değer eklediğinizde, artış 1 ile kullanılır. == kullanıldığında, realloc() daha fazla geçici bir işaretçi kullanarak doğrularsınız ve realloc() başarılı olursa, dizi işaretçinize geçici işaretçi atayın ve devam edin. gidiyor (tahsis edilen = değeri güncellemeyi unutmayın.) Ardından, tüm nesneler depolanana kadar tekrarlayın. Malloc ve realloc kullanıcaz ama ben yapamadım yani bu yaptıgınız kodu da pek anlamadım basit bir şey olmalı cunku henuz yeniyiz c de
 

  Şuanda konuyu görüntüleyen kullanıcılar


Üst Alt