2017-01-30 10 views
0

Итак, мне интересно, есть ли способ, которым я мог бы запустить программу в c, и когда она закончится, сразу вызвать и запустить вторую программу.Запуск программы в программе

В принципе, это для текстовой приключенческой вещи, и я бы хотел, чтобы она выполнялась в сегментах, отчасти потому, что код не становится огромным с тонами, если if-statements и все такое, а отчасти и так что у меня может быть искусственная система контрольных точек, чтобы вы могли подобрать сортировку, где вы остановились.

Это или способ сохранить ваше продвижение как-то. Я ничего не мог придумать, как это сделать, но я знаю, что это возможно. Я просто не знаю, что я делаю. Простите меня, если вышеупомянутый вопрос (вопросы) действительно просты.

+0

Это не простые вопросы; они очень широкие вопросы. У вас есть код вашего приключения? Как вы будете поддерживать согласованность между сегментами? Предположительно, когда вы переходите из одного сегмента в другой, игроки не теряют свои оценки или найденные товары и т. Д. Поэтому вам нужно знать, как вы собираетесь передавать эти данные между сегментами. База данных? Файл? Либо можно работать. Будете ли вы иметь дело только с одним пользователем за раз или может быть несколько пользователей? В среде POSIX вы можете использовать одно из семейств функций 'exec *()' для выполнения новой программы. –

+0

Один пользователь за раз, и я подумал, что если я собираюсь пойти с несколькими сегментами, я бы просто использовал файл для хранения данных игрока вместо массива, который я бы использовал, если бы я придерживался одного гигантского файл. – hego64

+0

Как вы собираетесь решить, какой сегмент начнется, когда ваш пользователь перезапустит игру? –

ответ

0

Вы можете использовать system звонки в C для выполнения других программ.

См: How do I execute external program within C code in linux with arguments?

Я не рекомендовал бы это по соображениям безопасности, однако. Вместо этого я думаю, что вы должны написать несколько текстовых файлов с информацией уровня, содержащейся внутри. Затем напишите общую программу, которая перемещает эти файлы в зависимости от ввода пользователя.

Смежные вопросы