0 / 0 / 0
Регистрация: 26.03.2019
Сообщений: 11
|
||||||
1 | ||||||
Массив char в переменной класса04.09.2020, 13:46. Показов 4974. Ответов 5
Мне нужно создать простой класс: "Населенный пункт".
Застрял в самом начале из-за условия: – Класс должен содержать одну или более переменную со строковыми данными. Строковые данные должны задаваться только с использованием массива символов (char str1[100] или wchat_t str2[200]). Не понимаю как правильно использовать масив char. В конструкторе все переменные класса должны быть инициализированы по умолчанию, при инициализации name, coordinates выдает ошибку. Вот код:
Ошибка (активно) E0137 выражение должно быть допустимым для изменения левосторонним значением TP1 Ошибка C3863 тип массива "char [100]" является неназначаемым TP1 C:\Users\user\source\repos\TP1\TP1\Source.cpp 10 Строки 10, 11.
0
|
04.09.2020, 13:46 | |
Ответы с готовыми решениями:
5
Преобразование текста из переменной string в char массив Двумерный динамический массив char переменной длины, realloc() Запись адреса переменной как массив char (или повторное обращение за выделением памяти) Массив char является полем класса: как присвоить ему значения? |
2832 / 2337 / 707
Регистрация: 29.06.2020
Сообщений: 8,658
|
||||||
04.09.2020, 14:17 | 2 | |||||
с массивом char нельзя так инициализировать, зато можно так :
вам в помощь набор функций с нуль строками (массив char заканчивающbqcz '\0') strlen, strcpy, strcat, strcmp ...
1
|
0 / 0 / 0
Регистрация: 26.03.2019
Сообщений: 11
|
||||||
04.09.2020, 14:30 [ТС] | 3 | |||||
В publick использовать эти функции при инициализации? Если не сложно, простенький пример приведите. Спасибо!
Добавлено через 7 минут Если сделать таким образом, то выполнится ли условие: ?
0
|
5113 / 4552 / 854
Регистрация: 07.10.2015
Сообщений: 9,462
|
||||||
04.09.2020, 14:48 | 4 | |||||
FelixTI, можно сделать так:
1
|
2832 / 2337 / 707
Регистрация: 29.06.2020
Сообщений: 8,658
|
||||||
04.09.2020, 14:49 | 5 | |||||
Сообщение было отмечено FelixTI как решение
Решение
char * и char[100] - разные типы, условия не будет выполнятся, для char[N] не нужнно следить за выделением и освобождением памяти, но нужно следить за длинной записываемых в нее данных.
1
|
04.09.2020, 15:09 | 6 |
Если массивы фиксированной длины то стоит написать сеттеры и в них проверять хватает ли длины, если что бросать исключение.
0
|
04.09.2020, 15:09 | |
04.09.2020, 15:09 | |
Помогаю со студенческими работами здесь
6
Как присвоить к новой char переменной другую char переменную с указателем При присваивании символа unicode переменной типа char происходит выход за диапазон переменной Увеличение int переменной зная её имя в char переменной Присвоить переменной char m значиние переменной int i.. Конвертация переменной char c в char c[] Как полю класса типа char* присвоить значение типа *char Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |