gpt4 book ai didi

我们可以将变量从一个 c 程序传递到另一个 c 程序吗?

转载 作者:行者123 更新时间:2023-12-02 01:37:35 24 4
gpt4 key购买 nike

所以我想将一个变量从一个 c 程序传递到另一个 c 程序。

例如:

main()
{
char str[]="Hello,there!";
system("program2.exe");
}

我想在 program2.exe 中使用 str[]。有没有办法将变量传递给另一个程序?

我使用文件从第一个程序写入数据并从第二个程序读取数据,但我想知道有没有其他方法可以做到这一点?

使用文件将数据从程序传递到另一个好吗?

最佳答案

你不能从字面上在两个进程之间传递一个变量,因为系统上的每个进程通常都有自己的内存空间——每个变量都属于一个进程,因此不能从另一个进程访问(或者我相信) .但是您可以使用 pipes 在进程之间传递数据.

管道是由操作系统实现的缓冲区,是一种比文件更有效的进程间数据共享方法(是的,您可以使用文件进行进程间通信)。这是因为文件在被访问之前必须写入磁盘,这使得它们在进程间通信时变慢。您还必须实现某种方法来确保这两个进程在读取和写入文件时不会损坏文件。

此外,管道可用于确保两个进程之间的持续通信,使其在许多情况下都很有用。当使用半双工管道(上面链接)时,您可以为每个进程设置一个管道以在它们之间建立通信 channel (即每个进程的单向通信 channel )。

关于我们可以将变量从一个 c 程序传递到另一个 c 程序吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30274356/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com