0

我试图使用 read() 函数来获取用户输入,但我在文档中唯一能找到的是关于从文件中读取,这是在 Linux c 语言中。我还想使用 write() 向控制台显示一些内容。

有谁知道这是怎么做到的?

4

2 回答 2

1

但我在文档中唯一能找到的是关于从文件中读取

别担心,标准输入是一个文件。

char buf[128];
read(STDIN_FILENO, buf, sizeof(buf));

我还想使用 write() 向控制台显示一些内容。

让我不要重复自己。

const char *s = "Hello World!\n";
write(STDOUT_FILENO, s, strlen(s));
于 2013-01-31T21:59:12.377 回答
0

这应该给你一个印象如何做到这一点(0是标准输入,1是标准输出)

#include <unistd.h>
#include <string.h>
int main () {
  char buf[100];
  char *msg="you wrote:";
  while (1) {
    int n;
    n=read (0, buf, sizeof(buf));
    write (1, msg, strlen(msg));
    write (1, buf, n);
  }
}
于 2013-01-31T22:00:09.597 回答