私は2つのファイルを送信していますが、もう1つはパイプを使ってcharを受け取っていますが、うまくいきましたが、メッセージを受け取った後、そのcharを整数に変換し、チャーの上に何がありますか?Cでcharから2つの数値を追加するにはどうすればよいですか?
基本的に "3 + 4"を7とどのように解析できますか?ここで
私write.cは
#include <fcntl.h>
#include <sys/stat.h>
#include <sys/types.h>
#include <unistd.h>
int main()
{
int fd;
char * myfifo = "/tmp/myfifo";
/* crear FIFO */
mkfifo(myfifo, 0666);
/* escribir al FIFO */
fd = open(myfifo, O_WRONLY);
write(fd, "3+4", sizeof("3+4"));
close(fd);
/* remover FIFO */
unlink(myfifo);
return 0;
}
であり、これは(汎用計算ではなくお尻)2つの番号を追加する方法についてだけであれば、これは
#include <fcntl.h>
#include <stdio.h>
#include <sys/stat.h>
#include <unistd.h>
#define MAX_BUF 1024
int main()
{
int fd;
char * myfifo = "/tmp/myfifo";
char buf[MAX_BUF];
/* open, read, and display the message from the FIFO */
fd = open(myfifo, O_RDONLY);
read(fd, buf, MAX_BUF);
printf("Received: %s\n", buf);
close(fd);
return 0;
}
私は 'write(....、strlen(" 3 + 4 ")の代わりに' write(fd、 "3 + 4"、sizeof( "3 + 4"));を呼び出す限り、 3 + 4 "));' –
コードを書式設定/インデントしてください。 –
あなたが受け取ったメッセージを解析するために今まで何を試しているのかを教えてください –