inetcli.c.texi

来自「一个C源代码分析器」· TEXI 代码 · 共 60 行

TEXI
60
字号
#include <stdio.h>#include <errno.h>#include <stdlib.h>#include <unistd.h>#include <sys/types.h>#include <sys/socket.h>#include <netinet/in.h>#include <netdb.h>#define PORT            5555#define MESSAGE         "Yow!!! Are we having fun yet?!?"#define SERVERHOST      "churchy.gnu.ai.mit.edu"void write_to_server (int filedes)@{  int nbytes;  nbytes = write (filedes, MESSAGE, strlen (MESSAGE) + 1);  if (nbytes < 0)    @{      perror ("write");      exit (EXIT_FAILURE);    @}@}intmain (void)@{  extern void init_sockaddr (struct sockaddr_in *name,                             const char *hostname,                             unsigned short int port);  int sock;  struct sockaddr_in servername;  /* @r{Create the socket.} */  sock = socket (PF_INET, SOCK_STREAM, 0);  if (sock < 0)    @{      perror ("socket (client)");      exit (EXIT_FAILURE);    @}  /* @r{Connect to the server.} */  init_sockaddr (&servername, SERVERHOST, PORT);  if (0 > connect (sock,                   (struct sockaddr *) &servername,                   sizeof (servername)))    @{      perror ("connect (client)");      exit (EXIT_FAILURE);    @}  /* @r{Send data to the server.} */  write_to_server (sock);  close (sock);  exit (EXIT_SUCCESS);@}

⌨️ 快捷键说明

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