socket
来源:互联网 发布:知乎for mac 编辑:程序博客网 时间:2024/06/10 18:39
client
#include<stdio.h>#include<stdlib.h>#include<sys/types.h>#include<sys/socket.h>#include<netinet/in.h>#include<arpa/inet.h>int main(){ int sockfd; int len; struct sockaddr_in address; int result; char ch = 'A'; sockfd = socket(AF_INET,SOCK_STREAM,0); //流 基于TCP/IP 数据报 UDP/IP address.sin_family = AF_INET; address.sin_addr.s_addr = inet_addr("127.0.0.1"); address.sin_port = htons(8888); //主机字节序 =》 网络字节序 len = sizeof(address); result = connect(sockfd,(struct sockaddr *)&address,len); if(result == -1){ perror("oops:client1"); exit(1); } write(sockfd,&ch,1); read(sockfd,&ch,1); printf("char from server = %c\n",ch); close(sockfd); exit(0);}
server
#include<stdio.h>#include<stdlib.h>#include<sys/types.h>#include<sys/socket.h>#include<netinet/in.h>#include<arpa/inet.h>int main(){ int server_sockfd,client_sockfd; int server_len,client_len; struct sockaddr_in server_address,client_address; int result; char ch; server_sockfd = socket(AF_INET,SOCK_STREAM,0); server_address.sin_family = AF_INET; server_address.sin_addr.s_addr = INADDR_ANY; server_address.sin_port = htons(8888); server_len = sizeof(server_address); bind(server_sockfd,(struct sockaddr *)&server_address,server_len); listen(server_sockfd,5); while(1){ char ch; printf("server waiting\n"); client_len = sizeof(client_address); client_sockfd = accept(server_sockfd,(struct sockaddr *)&client_address,&client_len); read(client_sockfd,&ch,1); ch++; write(client_sockfd,&ch,1); close(client_sockfd); }}
0 0
- socket
- socket
- Socket
- Socket
- Socket
- Socket
- Socket
- Socket
- socket
- Socket
- Socket
- Socket
- Socket
- socket
- socket
- socket
- socket
- socket
- Android的资源类型之Drawable
- mac ionic 安装
- 一分钟带你理解闭包--js面向对象编程
- 【java学习】正则表达式的应用
- 由首例无人驾驶车祸谈起:机器视觉的盲区
- socket
- airflow开启自动化schedule
- java 多线程总结(二) 线程阻塞的方法
- struts2中通配符使用
- 史上最快的Android多渠道打包方案
- [Android] OpenGL ES渲染YUV
- UVA-227 Puzzle
- Java NIO 学习(四)--ServerSocketChannel与SocketChannel
- Perl正则表达式小结~张润萌