2015-05-15 2 views
1

Я пытаюсь поделиться значением переменной между двумя программами C, которые работают независимо друг от друга, поэтому каждый из них использует отдельную память, я использовал заголовочный файл share.h с оператором extern, но он не work, я также использовал txt-файл, в который я пишу переменную из одной программы на C, и читаю ее со второй программой C оттуда, но есть проблемы с синхронизацией и проблема разрешений для чтения файла, любые идеи, как решить эти проблемы или как для эффективного обмена переменной стоимостью?значение переменной доли между программами C

+2

Возможно, вы захотите ознакомиться с [shared memory] (http://en.wikipedia.org/wiki/Shared_memory_%28interprocess_communication%29) или другими [межпроцессорными связями] (http: //en.wikipedia. org/wiki/Inter-process_communication). –

+0

Есть много способов сделать «межпроцессное общение», если вы находитесь в unix, смотрите на полуфоры и общую память или используете именованный канал. – Vorsprung

+0

Я нахожусь в окнах, как я могу использовать именованный канал или даже создать его? Понятия не имею – 101

ответ

1

Я не думаю, что это возможно, просто добавив заголовки, поскольку две программы будут иметь собственное пространство памяти. Таким образом, вы не можете общаться, просто добавляя заголовки.

Вы, вероятно, нужно использовать некоторые IPC mechanism

На стороне записки:

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

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