|
2 / 2 / 0
Регистрация: 10.11.2018
Сообщений: 25
|
||||||
Как сделать перезапуск оператора множественного выбора08.04.2019, 17:07. Показов 2105. Ответов 15
Метки нет (Все метки)
Доброго времени суток! Возникло несколько проблем. Как сделать оператор множественного ввода перезапускаемым? Т.е. Допустим юзер ввел 1, посмотрел как все отработало, ему задается вопрос "Продолжить работу?", юзер соглашается и в этом моменте нужно перезапустить главный switch(choice), чтобы он смог выбрать например 2 или 3. Я сам дошел до того, что нужно выводить весь свитч во внешнюю функцию, но тогда придется объявлять много вещей внутри той функции.
И вторая проблема появляется если решить первую, допустим человек сначала добавил несколько контактов ( это записная книжка кстати), потом он хочет попробовать поискать, вводит что хочет продолжить работу, выбирает пункт 3, будет ли работать поиск по тем, кого он ввел до этого? Если нет, то как реализовать? Кликните здесь для просмотра всего текста
Добавлено через 6 минут UPD: Понял, что перезапускаемость можно реализовать посредством goto. Что об этом думаете? Второй вопрос по-прежнему в силе
0
|
||||||
| 08.04.2019, 17:07 | |
|
Ответы с готовыми решениями:
15
Использование оператора множественного выбора Написать программу вычисления выражения c использованием оператора множественного выбора Switch Написать программу вычисления выражения c использованием оператора множественного выбора Switch |
|
Mental handicap
1246 / 624 / 171
Регистрация: 24.11.2015
Сообщений: 2,429
|
||||||
| 08.04.2019, 17:16 | ||||||
Сообщение было отмечено Shprexan как решение
Решение
Shprexan, если очень упрознить, то можно так:
1
|
||||||
|
2 / 2 / 0
Регистрация: 10.11.2018
Сообщений: 25
|
|
| 08.04.2019, 18:09 [ТС] | |
|
UPDD: Как сделать возврат через do while я разобрался. Теперь вопрос посложнее, второй, как сделать, чтобы те контакты которые добавились во втором пункте , участвовали в поиске , после перезапуска?
0
|
|
|
Mental handicap
1246 / 624 / 171
Регистрация: 24.11.2015
Сообщений: 2,429
|
||
| 08.04.2019, 18:24 | ||
|
Где добавились? Куда добавились? Приведите минимально воспроизводимый урывок кода, демонстрирующий вашу проблему.
0
|
||
|
2 / 2 / 0
Регистрация: 10.11.2018
Сообщений: 25
|
||||||||||||
| 08.04.2019, 19:00 [ТС] | ||||||||||||
|
Кликните здесь для просмотра всего текста
Кликните здесь для просмотра всего текста
0
|
||||||||||||
|
Mental handicap
1246 / 624 / 171
Регистрация: 24.11.2015
Сообщений: 2,429
|
|
| 08.04.2019, 19:10 | |
|
Shprexan, покажите код где вы выделяете память и где у вас происходит выбор кейса, а лучше весь мейн.
0
|
|
|
2 / 2 / 0
Регистрация: 10.11.2018
Сообщений: 25
|
||||||
| 08.04.2019, 19:12 [ТС] | ||||||
|
Azazel-San,
Кликните здесь для просмотра всего текста
0
|
||||||
|
Mental handicap
1246 / 624 / 171
Регистрация: 24.11.2015
Сообщений: 2,429
|
|
| 08.04.2019, 19:19 | |
|
Shprexan, итак.
Во втором кейсе вы добавляете новые записи, но куда в файл? Потом почему при выделении вы выделяете памяти размеров size + n? Вы же спросили сколько пользователь хочет добавить записей, например он введёт 2, а вы зачем-то выделите больше, зачем? И не забывайте удалить память во 2м кейсе, у вас там утечка есть.
0
|
|
|
2 / 2 / 0
Регистрация: 10.11.2018
Сообщений: 25
|
|
| 08.04.2019, 19:23 [ТС] | |
|
Azazel-San, Почему же в файл, в массив объектов. Память выделил размером size+n, чтобы туда влезли 3 записи из внешних файлов , то есть пользователь вводит 2, значит всего будет объектов 5. Насчет утечки помню, просто забыл написать там.
0
|
|
|
Mental handicap
1246 / 624 / 171
Регистрация: 24.11.2015
Сообщений: 2,429
|
|
| 08.04.2019, 19:29 | |
Сообщение было отмечено Shprexan как решение
Решение
Shprexan, это не так работает, вначале мейна вы выделили допустим памяти для трёх объектов , а потом во втором кейсе, почему-то для пяти, хотя должны были для дополнительных двух.
Массивы не так работают , их нельзя так легко расширять , если знаете что вам надо будет добавить ещё элементов, то стоит заранее выделить больше памяти.
1
|
|
|
2 / 2 / 0
Регистрация: 10.11.2018
Сообщений: 25
|
||||||
| 08.04.2019, 19:41 [ТС] | ||||||
|
Azazel-San, В общем то, проблема с поиском решается тем, что память надо выделить единожды, объекты из файлов сразу до свитча внести в массив объектов. В первом кейсе только вывод, во втором кейсе, первые три ячейки памяти заняты, память никакая не выделяется ( поскольку выделил сразу размером size +5), вводятся только столько объектов сколько ввел пользователь. А вот если попробовать дважды ввести по одному объекту то они друг друга заменят, подскажи как пофиксить?
Кликните здесь для просмотра всего текста
0
|
||||||
|
Mental handicap
1246 / 624 / 171
Регистрация: 24.11.2015
Сообщений: 2,429
|
|
| 08.04.2019, 19:50 | |
|
Shprexan, каким образом формируется размер массива, который до свитча?
Что за sizeof(files) / sizeof(string)? Что такое string? И в чем идея так выделять?
0
|
|
|
2 / 2 / 0
Регистрация: 10.11.2018
Сообщений: 25
|
||||||
| 08.04.2019, 19:56 [ТС] | ||||||
|
Azazel-San,
0
|
||||||
|
Mental handicap
1246 / 624 / 171
Регистрация: 24.11.2015
Сообщений: 2,429
|
||||||
| 08.04.2019, 20:42 | ||||||
|
Shprexan, может вам и виднее.
Опять же попытаюсь на простом примере:
0
|
||||||
|
2 / 2 / 0
Регистрация: 10.11.2018
Сообщений: 25
|
|
| 08.04.2019, 20:45 [ТС] | |
|
0
|
|
| 08.04.2019, 20:46 | |
|
0
|
|
| 08.04.2019, 20:46 | |
|
Помогаю со студенческими работами здесь
16
Перегрузка оператора, для множественного использования
Оператор множественного выбора Оператор множественного выбора, язык C Ошибка с оператором множественного выбора Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога
Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
|
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование
. \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json>
Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом.
# Check if. . .
|
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так:
https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347
Основана на STM32F303RBT6.
На борту пять. . .
|
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
|
|
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу,
и светлой Луне.
В мире
покоя нет
и люди
не могут жить в тишине.
А жить им немного лет.
|
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила»
«Время-Деньги»
«Деньги -Пуля»
|
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога
Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
|
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога
Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
|