⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 p12-24.c

📁 SUN Solaris8平台下进程间通信
💻 C
字号:
#include <stdio.h>#include <unistd.h>#include <stdlib.h>#include <sys/socket.h>#include <sys/un.h>#include "err_exit.h"#define SERVER  "/tmp/serversocket"#define CLIENT  "/tmp/mysocket"#define MAXMSG  512int make_named_socket(const char *name);int main (int argc, char **argv){    int sock, i;    char message[MAXMSG];    struct sockaddr_un name;    size_t size;    int nbytes;    if (argc < 2)  /* 命令行未给出要发送的消息 */        exit(0);    /* 创建套接字 */    sock = make_named_socket(CLIENT);    /* 初始服务套接字地址结构*/    name.sun_family = AF_UNIX;    strcpy(name.sun_path, SERVER);    size = strlen(name.sun_path) + sizeof(name.sun_family);    for (i = 1; i<argc; i++){        /* 发送数据报 */        nbytes = sendto(sock, argv[i], strlen(argv[i])+1, 0,                        (struct sockaddr *)&name, size);        if (nbytes < 0)            err_exit("sendto(client)");        /* 等待回答 */        nbytes = recvfrom(sock, message, MAXMSG, 0, NULL, NULL);        if (nbytes < 0)            err_exit("recfrom (client)");        /* 打印出收到的回答 */        printf("Client: got message: %s\n", message);    }    /* 清理 */    remove (CLIENT);    close (sock);}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -