Yaşar hocam int *a deyip de a = dizi diyebiliyoruz o zaman bu sadece pointerlar için geçerli demekki.
Yani kelime,harf veya sayı doğrudan diziye atanamıyor ancak onun indisi ile atanabiliyor.
scanf("%d,&sayi")
dizi[]=sayi // atanamıyor
dizi[10]=sayi//11. elamınına atanıyor,yani indis vasıtasıyla
Ancak sanırım şöyle oluyor:
char dizi[5]={ 's', 'a', 'y', 'i', '\0' };
char dizi[2] ---> y olmuş oluyor
Yani özetle diziye indissiz atama yapılamıyor,ekleme-çıkarma yapılamıyor anladığım kadarıyla.Mutlaka indisinin belirtilmesi gerekiyor.
int dizi[2]=2 / /3.elemanına 2 yi atadık
int dizi[3] // [0][1][2] // yani int [0] int [1] int [2]
2 sorum daha olacak:
int dizi[10] --- bu ifadeyi for ile kullanmak istediğimiz zaman i<10 değil i<9 olarak yazdıracağız yani indis sayısının 1 eksiği doğru anlamış mıyım?
(sizeof(dizi) / sizeof(dizi[0]) - 1)
Ben bu kodu ilk defa sizden görüyorum,bu kod kullanıcı ile etkileşimli programlar için sanırım.(scanf,gets)Çok işe yarar gibi.


LinkBack URL
About LinkBacks
Alıntı Yaparak Yanıtla


Bookmarks