SORU
22 EYLÜL 2009, Salı


dizi çürüyen nedir?

dizinin çürüyen nedir? dizi işaretçileri için herhangi bir ilişkisi var mı?

CEVAP
22 EYLÜL 2009, Salı


"İşaretçiler içine. çürüme diziler söyledi. C bir dizi int numbers [5] olamaz yeniden işaret olarak ilan etti, yani numbers = 0x5a5aff23 diyemezsin. Daha da önemlisi vadede çürüme tür ve boyut boyut bilgileri (sayı 5) ve türü kaybederek int* içine çürüme int [5] değil artık kaybı anlamına gelir. cases where the decay doesn't happen için buraya bak.

Eğer sen geçen bir dizi değer, ne gerçekten yapıyorsun kopyalama bir işaretçi bir işaretçi dizi ilk öğe kopyalanır parametre (kimin tip gerektiğini de bir işaretçi dizi öğesi türü). Bu aslında bir işaretçi olur çünkü dizinin çürüyen doğa; bir zamanlar çürümüş nedeniyle, sizeof artık verir tam bir dizi boyutu, çalışır. Bu tercih (diğer nedenlerle birlikte) referans ya da işaretçi tarafından geçmesine neden olur.

Üç bir dizi geçmek için yollar1:

void by_value(const T* array)   // const T array[] means the same
void by_pointer(const T (*array)[U])
void by_reference(const T (&array)[U])

Son iki ilk bir dizi argüman bu yana parametre atanacak çürümüş sahip değil sizeof doğru bilgi verin.

1 Sabit U derleme zamanında bilinmesi gerekir.

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Android Authority

    Android Auth

    3 NİSAN 2011
  • MandMEvangelists

    MandMEvangel

    28 Ocak 2008
  • Chaîne de TheMoustic

    Chaîne de T

    5 Kasım 2006

İLGİLİ SORU / CEVAPLAR