SORU
13 AĞUSTOS 2010, Cuma


Negatif dizi dizinleri C izin verilir?

Sadece bazı kod okuyordum ve kişi arr[-2] arr gibi daha önce 2 öğe erişmek için kullandığı buldu

|a|b|c|d|e|f|g|
       ^------------ arr[0]
         ^---------- arr[1]
   ^---------------- arr[-2]

Buna izin var mı?

arr[x] *(arr x) ile aynı olduğunu biliyorum. Yani arr[-2] iyi durumda olan *(arr - 2),. Ne düşünüyorsun?

CEVAP
13 AĞUSTOS 2010, Cuma


Bu doğru mu? C99 §6.5.2.1/2:

Alt indis tanımı [] operatörü E1[E2] aynı (*((E1) (E2))).

Sihir yok. 1-1 bir denklik. Bir işaretçi ( * ) kaldırma her zaman olduğu gibi, geçerli bir adresi işaret emin olmak gerekir.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Emotional Trancer

    Emotional Tr

    4 Mart 2010
  • Evan Coury

    Evan Coury

    29 NİSAN 2007
  • HTC

    HTC

    12 Ocak 2006