Сохранение значений переменных от одного исполнения к другому - PullRequest
0 голосов
/ 01 мая 2011

Привет Считайте, что у меня есть две программы a.c и b.c. Программа b.c выполняется несколько раз из a.c с использованием execve(). Я хочу сохранить значения переменных и структур данных, определенных в b.c, от одного выполнения к другому. Есть ли способ сделать это?

Спасибо

Ответы [ 2 ]

2 голосов
/ 01 мая 2011

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

Кроме того, вы можете хранить все данные о состоянии в одном struct и использовать fwrite и fread для сохранения и получения состояния. Или вы можете использовать mmap, чтобы упростить этот подход. Вы должны быть осторожны, если в вашем состоянии есть указатель. Вам не нужно использовать одну структуру для этого подхода, но это будет проще.

2 голосов
/ 01 мая 2011

имеют b.c загружают и сохраняют свое состояние из и в файл.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...