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."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.
#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 deC 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 */ }