198 / 170 / 19
Регистрация: 05.05.2013
Сообщений: 1,235
|
||||||
1 | ||||||
char массив, get(), ввести больше символов чем в массиве17.08.2013, 19:42. Показов 4231. Ответов 45
Метки нет (Все метки)
0
|
17.08.2013, 19:42 | |
Ответы с готовыми решениями:
45
Как заполнить массив char если заранее не известно сколько символов в массиве? Можно ли в char строку копировать больше байт, чем ее размер? Ввести в массив слов все слова из предложения, в которых гласных букв больше, чем согласных Задан символьный массив. Ввести с клавиатуры символ и вывести на консоль количество таких символов в массиве. |
198 / 170 / 19
Регистрация: 05.05.2013
Сообщений: 1,235
|
|
17.08.2013, 22:18 [ТС] | 22 |
Руки уже заплетаются, ну и мозг вместе с ним, не буду рыться в книге, там написано, почему лучше использовать char, я сейчас учу запись в файл, редактирование, чтение из файла, и вроде как, потому что там определенное количество в отличии от string, по этому приходится использовать массив char, я не думал что так сложно с "обрубкой" не нужных (превышающих лимит) символов.
Наверное проще использовать преобразовании string в char
0
|
198 / 170 / 19
Регистрация: 05.05.2013
Сообщений: 1,235
|
|
17.08.2013, 22:22 [ТС] | 24 |
0
|
17.08.2013, 22:23 | 25 | ||||||||||
0
|
198 / 170 / 19
Регистрация: 05.05.2013
Сообщений: 1,235
|
|
17.08.2013, 22:28 [ТС] | 28 |
0
|
17.08.2013, 22:30 | 29 | |||||
Это так, навскидку, а вообще, странно, что используется постоянно смесь C и C++. Либо вы классик, используете malloc, scanf("%10d",&a) и void*, либо вы новатор, и тогда ваш выбор new, cin и string.
А вообще, по стандарту вводиться должно без мусора. попробуйте просто исправить
0
|
198 / 170 / 19
Регистрация: 05.05.2013
Сообщений: 1,235
|
|
17.08.2013, 22:32 [ТС] | 30 |
вот в программе + описание, там написано почему Или я опять что то не так понял?
0
|
17.08.2013, 22:39 | 31 |
Опять. Там написано что программа должна работать с "записями постоянной длины" и поэтому там используется массив символов типа char. Ткни меня носом где сказано что использование массивов символов правильней и удобней чем использование класса string.
void * - не используется в С++ ?
0
|
198 / 170 / 19
Регистрация: 05.05.2013
Сообщений: 1,235
|
|
17.08.2013, 22:45 [ТС] | 33 |
Ну я только начинающий и по мне при работе с записью в файл лучше использовать фиксированную длину (особенно если ты начинающий ), а у string то она не фиксированная?
Добавлено через 2 минуты Jupiter, но ведь рабочий вариант, он не позволяет вводить несколько слов через пробел
0
|
17.08.2013, 22:56 | 37 |
Для приведения типов используются static_cast, dynamic_cast, const_cast. Для хранения объектов - умные указатели. Для возможности хранить разные классы в одном массиве, их наследуют от одного предка, после чего вгоняют указатели в вектор.
Тип void* и приведение указателей к void* есть, но их использование
0
|
В астрале
8049 / 4806 / 655
Регистрация: 24.06.2010
Сообщений: 10,562
|
|
17.08.2013, 23:20 | 39 |
castaway, Иерархия, any и т.д. void* самый простой вариант конечно.
0
|
17.08.2013, 23:26 | 40 |
ForEveR, мм.. что иерархия?
Я не беру в расчет сторонние либы типа boost. К примеру: не вижу причин заменять void * на boost::any в приложении типа "Hello, World!"
0
|
17.08.2013, 23:26 | |
17.08.2013, 23:26 | |
Помогаю со студенческими работами здесь
40
Двумерный массив. Определить, есть ли в данном массиве строка, содержащая больше положительных элементов, чем отрицательных. Алгоритмы Маркова. A={a,b}. Если в P символов a больше, чем символов b, то выдать ответ a Построить машину Тьюринга. Если в P символов a больше, чем символов b, то выдать ответ a Консоль не позволяет ввести больше 254 символов Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |