在C程序之间共享变量值[重复]

Posted

技术标签:

【中文标题】在C程序之间共享变量值[重复]【英文标题】:share variable value between C programs [duplicate] 【发布时间】:2015-05-15 12:22:38 【问题描述】:

我试图在两个相互独立运行的 C 程序之间共享一个变量值,因此每个程序都使用单独的内存,我使用了带有 extern 语句的 share.h 头文件,但它不起作用,我还使用了txt 文件,我从一个 C 程序写入变量并从那里用第二个 C 程序读取它,但是存在同步问题和读取文件的权限问题,任何想法如何解决这个问题或如何有效地共享变量值?

【问题讨论】:

您可能想了解shared memory 或其他inter-process communications 方法。 如果您在 unix 上查看信号量和共享内存或使用命名管道,有很多方法可以进行“进程间通信” 我在 Windows 上如何使用命名管道甚至创建它?我不知道 【参考方案1】:

我认为仅仅通过添加标题是不可能的,因为这两个程序将有自己的内存空间。所以你不能通过添加标题来沟通两者。

你可能需要使用一些IPC mechanism

附带说明:

extern一般用于在同一个程序的两个C文件之间共享变量,但不能在两个不同的程序之间使用。

【讨论】:

以上是关于在C程序之间共享变量值[重复]的主要内容,如果未能解决你的问题,请参考以下文章

多线程之内存可见性

如何在 Razor .cshtml 和 Html 文件之间共享 JS 变量值(同一解决方案中的 Html 解决方案)

WiFi共享设置

C ++资源文件ProductVersion显示变量名称而不是变量值[重复]

volatile的作用及原理

java内存模型值synchronized和volatile