使用系统文件实现socket通信--客户端搭建
2016-03-01 20:48
549 查看
使用系统文件实现socket通信--客户端创建
注意:本工程是iOS >> application >> singleview 创建的工程在搭建完服务器端的前提下,写完本工程。 先运行服务器端,在运行客户端 就可以看到服务器端给我们发送的消息(是打印出来的 hello World)
客户端创建也是要引入同服务器端一样的四个文件
#import <arpa/inet.h> #import <sys/types.h> #import <sys/socket.h> #import <netinet/in.h>
客户端创建分为四个步骤
1.创建socket
2.连接到指定的服务器
3.数据传输
4.关闭socket
全部代码如下
- (void)viewDidLoad { [super viewDidLoad]; // Do any additional setup after loading the view, typically from a nib. // 1.创建到socket int socketDescripter = socket(AF_INET, SOCK_STREAM, 0); // 2.连接到指定的服务器 (ip , 端口号, 网络层协议IPV4/IPV6)) struct sockaddr_in sockAddr = {0}; sockAddr.sin_family = AF_INET; sockAddr.sin_addr.s_addr = inet_addr("10.80.10.33");//因为我们服务器端也是自己电脑创建的 用的是我们自己的IP 查看自己IP的方法 不会就百度 sockAddr.sin_port = htons(8910);// 设置端口 这个要和服务器的端口一致 方法htons()是保证任何处理器下的端口在编译成二进制的时候 都是一样的 connect(socketDescripter, (struct sockaddr *restrict)&sockAddr, sizeof(sockAddr)); // 3.数据传输 char buffer[20];//创建一个字符串数组 接收数据 recv(socketDescripter, buffer, 20, 0);//这个函数用来接收消息 printf("%s\n",buffer); // 4.关闭socket close(socketDescripter); }
相关文章推荐
- C++16道面试题
- 红黑树
- 1.1-监控思路、架构介绍
- 分享一个Markdown pad2 pro的授权key
- Oracle PL/SQL之LOOP循环控制语句
- Android四大组件之Service
- 判断一个单链表是否有环及环的连接点问题
- Flume采集rsyslog日志并发送到elasticsearch上
- asp.net页面之间的跳转
- 浏览器XMLHttpRequest案例
- 玩转AI(Adobe illustrator)——小西瓜(1)
- unitywebgl发展计划
- Linux学习笔记:linux下的文件以及对文件的简单操作
- [总结]CDQ分治&整体二分
- Apache shiro 笔记整理之web整合二
- Android 工程报错解决 Unable to resolve target 'android-17'
- Android配置文件中<uses-sdk>标签
- zzulioj 1730: 通信基站 (全排列&DFS)好题
- Python练习(2):递归解决汉诺塔问题
- mtime、ctime、atime