C Dilinde Diziler

ayna222

Hectopat
Katılım
8 Mart 2011
Mesajlar
47
Daha fazla  
Cinsiyet
Erkek
C dilinde kullanıcı tarafından girilen bir intger dizinin eleman sayısını,kullanıcıya sormadan, bulmak mümkün müdür?
 
normalde bir for döngüsü kullaniyorum aşşagıdaki benim yaptığım bir örnek.
printf("dizi kaç elemanli");
scanf("%d",&n);
for(i=0;i<n;i++)
{
printf("%dinci eleman:",i+1);
scanf("%d",&x);
}
ancak dizinin eleman sayısını kullanıcıya sormak istemiyorum.kullanıcı sadece diziyi giricek ve enter a basıcak bunu yapmak mümkün mü?
 
C de array dedigimiz eleman aslinda yalnizca bir pointer. Bu pointer in ram uzerinde tuttugu adresin uzerine tuttugu degerin tipinin uzunlugunu(ornegin int16 2 byte int32 4 byte) ekleyerek array icinde gezebiliyoruz. Aslinda indis dedigimiz ve genelde dizi[indis] seklinde kullandigimiz seyde o i degeri tutulan turun uzunlugundan kac defa eklemesi gerentigini anlatir bilgisayara. Bu sebeple C dilinde bu dediginizi yapmak mumkun degil(stringler haric). Bu tarz bir islem icin yapmaniz gereken sey int turundeki bir veri olusturmaniz ve kullanicinin yaptigi her giriste bu degeri bir arttirarak programin kullanmasi icin bir sayac olusturmak :) bu sayaci dizinin uzunlugu olarak kullanarak for dongunuzu yazarsaniz sorunsuz calisacaktir :)

Iyi Gunler Dilerim.[/i]
 
Uyarı! Bu konu 10 yıl önce açıldı.
Muhtemelen daha fazla tartışma gerekli değildir ki bu durumda yeni bir konu başlatmayı öneririz. Eğer yine de cevabınızın gerekli olduğunu düşünüyorsanız buna rağmen cevap verebilirsiniz.

Geri
Yukarı