Как объявить char массив - C (СИ)
Формулировка задачи:
Доброго времени дня.
Возникла такая проблема.
Т.е. если инициализировать при объявлении - то все работает, иначе выскакивает ошибка.
Что я не так делаю? Как присваивать строку char-массиву?
Еще непонимаю, как обстоят дела с двумерными char массивами. Необходимо следующее: в каждую ячейку класть букву, например, "р".
Как это правильно сделать:
char table[40] = "hello"; /* работает */ void main() { table[40] = "hello"; /* ошибка */ }
table[1][2] = "p";
Решение задачи: «Как объявить char массив»
textual
Листинг программы
char table[40]; strcpy(table,"hello"); /* table[40]={"hello"} */
Объяснение кода листинга программы
В данном коде:
- Объявляется массив char table[40] - это значит, что в памяти выделяется 40 ячеек для хранения символов (букв, цифр и т.д.).
- Затем с помощью функции strcpy(table,
hello
), в первую ячейку массива (table[0]) копируется строкаhello
. - Далее, в данном коде ничего не происходит, и код заканчивается.
Примечание: В строке / table[40]={
hello
} / комментарий написан некорректно, так как вместо {hello
} должно быть {.hello.
}. Но, так как это комментарий, то он не влияет на работу программы.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д