SORU
24 Mart 2012, CUMARTESİ


Köşeli parantez C dizisi başlatma ne demek?

static uint8_t togglecode[256] = {
    [0x3A] CAPSLOCK,
    [0x45] NUMLOCK,
    [0x46] SCROLLLOCK
};

[0x3A] anlamı nedir? Sadece int a[2] = {1, 2}; gibi ifadeleri öğrendim

CEVAP
24 Mart 2012, CUMARTESİ


Yeniden anlamına gelirndizinin-th element. Verdiğin örnek anlamına gelir:

togglecode[0x3A] == CAPSLOCK
togglecode[0x45] == NUMLOCK
togglecode[0x46] == SCROLLLOCK

Bu "designated initializers" olarak adlandırılan ve aslında C99 standardının bir parçası. Ancak, = olmadan sözdizimi değildir. Bu sayfadan:

GCC 2.5 beri eski ama GCC olduğu için farklı bir sözdizimi hala öğe değeri önce [index] yazmak = no ile kabul eder.

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Jose LviS el Bambino ( JLB )   LviSito

    Jose LviS el

    3 ŞUBAT 2008
  • David MeShow

    David MeShow

    10 EKİM 2006
  • schmittastic

    schmittastic

    9 EYLÜL 2009