«{}» означает массив или - PullRequest
2 голосов
/ 17 июля 2011

Я читаю «Программирование на iphone - руководство для большого ранчо ботаников», и есть такой фрагмент:

static NSString *randomNounList[3] =
{ 
    @"Bear", 
    @"Spork",
    @"Mac"
};

Итак, randomNounList теперь массив?Но он объявлен как NSString.Что здесь означают скобки {}?

Ответы [ 2 ]

6 голосов
/ 17 июля 2011

Он объявлен как массив из 3 указателей на NSString.В пределах {} вы инициализируете массив.

2 голосов
/ 17 июля 2011

Ответ уже был получен, но вот распространенный способ инициализации массива int , который может помочь вам увидеть, что происходит:

int array[] = { 1,2,3 };

Вы даже не можетенужен счетчик, компилятор может это выяснить.

Я бы порекомендовал вам прочесть хороший урок языка Си, чтобы вы могли понять код, подобный этому (выдержка из руководства по Bison):

#include <math.h>

...

struct init
{
  char const *fname;
  double (*fnct)(double);
};

struct init const arith_fncts[] =
{
  "sin", sin,
  "cos", cos,
  "atan", atan,
  "ln", log,
  "exp", exp,
  "sqrt", sqrt,
  0, 0
};

: -)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...