所以,我在学习 C 的第一个小时。也许我今晚会跳到 C++。
我想使用 C 创建两个可以相互“对话”的命令行程序。想到的第一个想法是通过写入和轮询文件在两者之间传输信息。但是,我认为 C 提供了直接分配和访问内存所需的所有方法,这将是一种更快、更明智的技术。
有人可以提供一个例子或建议吗?
所以,我在学习 C 的第一个小时。也许我今晚会跳到 C++。
我想使用 C 创建两个可以相互“对话”的命令行程序。想到的第一个想法是通过写入和轮询文件在两者之间传输信息。但是,我认为 C 提供了直接分配和访问内存所需的所有方法,这将是一种更快、更明智的技术。
有人可以提供一个例子或建议吗?
您要求的是共享内存。不幸的是,共享内存本身并不是C 语言的一部分,而是操作系统的一个特性。由于您没有指定您使用的操作系统,我将您指向一个Unix SysV 共享内存教程。
我相信您指的是共享内存段。您还可以使用管道或套接字在两个进程之间进行通信。根据应用的不同,每个都有其优势。
这是关于进程间通信的一个很好的指南,它涵盖了除了管道、套接字之外的主题。
您需要研究的技术是“共享内存”。它是特定于操作系统的,而不是在 C 标准库中。
由于您没有指定操作系统,因此您必须自己进行一些研究。如果您使用的是 Windows,请查看此页面。
If you are in a unix environment you can use shmget() and shmat() to create and attach a shared memory segment. Both process assess the segment via a common integer key.