server.c
上传用户:bilang918
上传日期:2010-03-24
资源大小:558k
文件大小:1k
源码类别:

网络

开发平台:

Unix_Linux

  1. /* File: server.c */
  2. #include <stdio.h>
  3. #include <sys/types.h>
  4. #include <sys/socket.h>
  5. #include <netinet/in.h>
  6. int main(int argc, char **argv)
  7. {
  8. int fd;
  9. int address_len;
  10. struct sockaddr_in address;
  11. //建立套接口
  12. fd = socket(AF_INET, SOCK_STREAM, 0);
  13. //绑定地址和端口
  14. address.sin_family = AF_INET;
  15. address.sin_addr.s_addr = htonl(INADDR_ANY);
  16. address.sin_port = htons(1234);
  17. address_len = sizeof(address);
  18. bind(fd, (struct sockaddr *)&address, address_len);
  19. //建立套接口队列
  20. listen(fd, 5);
  21. while(1) {
  22. struct sockaddr_in client_address;
  23. int len;
  24. int client_sockfd;
  25. char *data = "Server to Client String!n";
  26. char data2[100];
  27. printf("waiting...");
  28. fflush(stdout);
  29. //等待
  30. len = sizeof(client_address);
  31. client_sockfd = accept(fd, 
  32. (struct sockaddr *)&client_address, &len);
  33. //接收数据
  34. readline(client_sockfd, (void *)data2, 100);
  35. printf("server read line:%s", data2);
  36. //发送数据
  37. writen(client_sockfd, (void *)data, strlen(data));
  38. printf("server send line:%s", data);
  39. //关闭联接
  40. close(client_sockfd);
  41. }
  42. }