strcpy не работает в C с указателями

#c #arrays #pointers

#c #массивы #указатели

Вопрос:

Мой код выглядит так:

 char *token;
token = strtok(myStrings, delimiter);
char newArray[MAXCHARS];

while (token != NULL) {
    printf("%sn", token);
    strcpy(newArray, amp;token);
    token = strtok(NULL, delimiter);
}
  

Я хочу add добавить токен к моему массиву символов, но он не работает.
Он печатает правильный токен (например, Martin), но я не могу добавить его в свой массив символов.

Комментарии:

1. избавьтесь от перед amp; token в вашем strcpy

2. amp;token является a char** . Вы должны вызвать strcpy(newArray, token) .

3. Я хочу добавить значения в массив, поэтому он должен выглядеть так: array = {Martin, Paul, Ashley}

4. Извините, но я раньше не работал с C

5. тогда вам понадобится что-то вроде char newArray[MAXNAMES][MAXCHARS]; и вам нужно будет strcpy(newArray[i], token); where i увеличивается каждый раз в цикле