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_DGRAM, 0); //SOCK_DGRAM
  13. //绑定地址和端口
  14. bzero(&address, sizeof(address));
  15. address.sin_family = AF_INET;
  16. address.sin_addr.s_addr = htonl(INADDR_ANY);
  17. address.sin_port = htons(1234);
  18. address_len = sizeof(address);
  19. bind(fd, (struct sockaddr *)&address, address_len);
  20. while(1) {
  21. struct sockaddr_in client_address;
  22. socklen_t len = sizeof(client_address);
  23. int n;
  24. char line[80];
  25. printf("waiting...");
  26. fflush(stdout);
  27. //接收数据
  28. n = recvfrom(fd, line, 80, 0, 
  29. (struct sockaddr *)&client_address, &len);
  30. printf("server received %d:%s", n, line);
  31. //发送数据
  32. sendto(fd, line, n, 0, 
  33. (struct sockaddr *)&client_address, len);
  34. }
  35. }