burda fonkB içinde nGlobal'e ulaşamassın çünkü fonkB ondan önce oluşturulmuş.
Birde
// bu ayrı bir bellek bölümünde tutulur stack veya heap'te değilde ilk değer atanmamış global değişken bölümünde tutulur diyebilriz int nGlobal;
// bu da ayrı bir yerde tutulur: ilk değer atanmış global değişken bölümü int nGlobal = 1;
değerlere erişebiliyorum orda sorun yok ama değiştiremiyorum,
şöyleki benim yapmak istediğim şey main bloğu üstünde tanımlı bir dizim var, bi for döngüsüyle main içinde tanımlanmış dizimi global diziye kopyalamak istiyorum, for döngüsüyle denedim bunu, döngüye giriyo dünüyo ama değer atamadan geçiyo direk
int main() { int local[100], i; for (i = 0; i < 100; ++i) local[i] = 100 - i;
for (i = 0; i < 100; ++i) global[i] = local[i];
for (i = 0; i < 100; ++i) printf("%d\n", global[i]);
return 0; }
Bu işe yaramıyor mu?
int array[20][20];
int main() { int ar = 3; for (int i = 0; i < satir_sayisi; i++) { for (int j = 0; j < sutun_sayisi; j++) { array[j] = atoi(argv[ar]); ar++; } } }
sizin gönderdiğiniz kod çalışıyo, o zaman benim yaptığım işlemde mi bi sıkıntı var? argv[] char dizisiydi o yüzden atoi kullandım satir_sayisi = 4 sutun_sayisi = 3
Bu mesaja 1 cevap geldi. Cevapları Gizle
peki nasıl değer atıyoruz o global dizilere?
fonksiyon prototipinden önce tanımlanmış bir global değişken o fonksiyondan erişilebilr yani:
int nGlobal;
void fonkA();
yukarda fonkA fonkA fonksiyonunda nGlobal'e erişebilrsin ama:
void fonkB();
int nGlobal;
burda fonkB içinde nGlobal'e ulaşamassın çünkü fonkB ondan önce oluşturulmuş.
Birde
// bu ayrı bir bellek bölümünde tutulur stack veya heap'te değilde ilk değer atanmamış global değişken bölümünde tutulur diyebilriz
int nGlobal;
// bu da ayrı bir yerde tutulur: ilk değer atanmış global değişken bölümü
int nGlobal = 1;
< Bu ileti mini sürüm kullanılarak atıldı > Bu mesaja 1 cevap geldi. Cevapları Gizle
değerlere erişebiliyorum orda sorun yok ama değiştiremiyorum,
şöyleki benim yapmak istediğim şey main bloğu üstünde tanımlı bir dizim var, bi for döngüsüyle main içinde tanımlanmış dizimi global diziye kopyalamak istiyorum, for döngüsüyle denedim bunu, döngüye giriyo dünüyo ama değer atamadan geçiyo direk
Bu mesaja 1 cevap geldi. Cevapları Gizle
Bu işe yaramıyor mu?
Bu mesaja 1 cevap geldi. Cevapları Gizle
int array[20][20];
int main()
{
int ar = 3;
for (int i = 0; i < satir_sayisi; i++)
{
for (int j = 0; j < sutun_sayisi; j++)
{
array[j] = atoi(argv[ar]);
ar++;
}
}
}
sizin gönderdiğiniz kod çalışıyo, o zaman benim yaptığım işlemde mi bi sıkıntı var?
argv[] char dizisiydi o yüzden atoi kullandım
satir_sayisi = 4
sutun_sayisi = 3
Bu mesaja 1 cevap geldi. Cevapları Gizle
< Bu ileti mini sürüm kullanılarak atıldı >
Bu mesajda bahsedilenler: @Ogbat