如果您无法下载资料,请参考说明:
1、部分资料下载需要金币,请确保您的账户上有足够的金币
2、已购买过的文档,再次下载不重复扣费
3、资料包下载后请先用软件解压,在使用对应软件打开
(精品word)Winsock编程
(精品word)Winsock编程
(精品word)Winsock编程
socket编程基础
socket是什么意思
在计算机通信领域,socket被翻译为“套接字",它是计算机之间进行通信的一种约定或一种方式。通过socket这种约定,一台计算机可以接收其他计算机的数据,也可以向其他计算机发送数据。
socket的典型应用就是Web服务器和浏览器:浏览器获取用户输入的URL,向服务器发起请求,服务器分析接收到的URL,将对应的网页内容返回给浏览器,浏览器再经过解析和渲染,就将文字、图片、视频等元素呈现给用户。
一个简单的Windows下的socket程序
服务器端代码server.cpp:
HYPERLINK"http://c.biancheng.net/cpp/html/3031。html"复制HYPERLINK”http://c.biancheng.net/cpp/html/3031。html”纯文本HYPERLINK"http://c.biancheng。net/cpp/html/3031.html"新窗口
#include<stdio.h>
#include<winsock2。h>
#pragmacomment(lib,"ws2_32.lib”)//加载ws2_32。dll
intmain(){
//初始化DLL
WSADATAwsaData;
WSAStartup(MAKEWORD(2,2),&wsaData);
//创建套接字
SOCKETservSock=socket(PF_INET,SOCK_STREAM,IPPROTO_TCP);
//绑定套接字
sockaddr_insockAddr;
memset(&sockAddr,0,sizeof(sockAddr));//每个字节都用0填充
sockAddr。sin_family=PF_INET;//使用IPv4地址
sockAddr.sin_addr.s_addr=inet_addr(”127。0。0。1”);//具体的IP地址
sockAddr。sin_port=htons(1234);//端口
bind(servSock,(SOCKADDR*)&sockAddr,sizeof(SOCKADDR));
//进入监听状态
listen(servSock,20);
//接收客户端请求
SOCKADDRclntAddr;
intnSize=sizeof(SOCKADDR);
SOCKETclntSock=accept(servSock,(SOCKADDR*)&clntAddr,&nSize);
//向客户端发送数据
char*str="HelloWorld!”;
send(clntSock,str,strlen(str)+sizeof(char),NULL);
//关闭套接字
closesocket(clntSock);
closesocket(servSock);
//终止DLL的使用
WSACleanup();
return0;
}
#include〈stdio。h〉
#include<winsock2.h〉
#pragmacomment(lib,”ws2_32.lib")//加载ws2_32。dll
intmain(){
//初始化DLL
WSADATAwsaData;
WSAStartup(MAKEWORD(2,2),&wsaData);
//创建套接字
SOCKETservSock=socket(PF_INET,SOCK_STREAM,IPPROTO_TCP);
//绑定套接字
sockaddr_insockAddr;
memset(&sockAddr,0,sizeof(sockAddr));//每个字节都用0填充
sockAddr。sin_family=PF_INET;//使用IPv4地址
sockAddr.sin_addr.s_addr=inet_addr(”127。0.0。1”);//具体的IP地址
sockAddr.sin_port=htons(1234);//端口
bind(servSock,(SOCKADDR*)&sockAddr,sizeof(SOCKADDR));
//进入监听状态
listen(servSock,20);
//接收客户端请求
SOCKADDRclntAddr;
intnSize=sizeof(SOCKADDR);
SOCKETclntSock=accept(servSock,(SOCKADDR*)&clntAddr,&nSize);
//向客户端发送数据
char*str=”HelloWorld!”;
send(clntSock,str
17****21
实名认证
内容提供者
最近下载