更多>
最新下载
24小时阅读排行榜
- 1 Linux NTP 同步失败的常见原因
- 2 Laravel中如何使用模型观察者Observer_Laravel模型事件监听方法【实战】
- 3 如何在 Tone.js 中准确监控序列进度与状态
- 4 tcp_tw_recycle 环境下的 NAT 兼容性与 tcp_timestamps 关闭风险
- 5 如何用正则表达式匹配包含“olo”但不以或不以“olo”开头/结尾的单词
- 6 Go 语言中 Goroutine 通过无缓冲通道实现精确交替执行的原理详解
- 7 Python 多线程中的共享数据问题
- 8 PostgreSQL regexp_split_to_table 的性能与替代方案
- 9 如何为 WooCommerce 可变订阅产品中的特定变体启用手动续订
- 10 为下拉菜单添加圆角时避免内容被裁剪的完整解决方案
- 11 fastapi 如何实现 StreamingResponse 的 chunked transfer
- 12 Linux 用户态与内核态切换的真实成本
- 13 Python 类型注解对运行时的影响
- 14 list.remove(x) 找不到元素抛 ValueError 的优雅处理方式
- 15 如何用 FORCE INDEX / INDEX HINT 强制走指定索引的时机
更多>
最新教程
-
- Node.js 教程
- 16361 2025-08-28
-
- CSS3 教程
- 1547099 2025-08-27
-
- Rust 教程
- 23473 2025-08-27
-
- Vue 教程
- 25900 2025-08-22
-
- PostgreSQL 教程
- 22398 2025-08-21
-
- Git 教程
- 9340 2025-08-21
下载首页 / 类库下载 / 其它类库
套接字的编程步骤
在使用之前须链接库函数:工程->设置->Link->输入ws2_32.lib,OK!
SOCKET sockSrv=socket(AF_INET,SOCK_STREAM,0);//创建套接字(socket)。
SOCKADDR_IN addrSrv;
addrSrv.sin_addr.S_un.S_addr=htonl(INADDR_ANY);//转换Unsigned short为网络字节序的格式
addrSrv.sin_family=AF_INET;
addrSrv.sin_port=htons(6000);
客户端代码如下:
#include <Winsock2.h>
#include <stdio.h>
void main()
{
WORD wVersionRequested;
WSADATA wsaData;
int err;
wVersionRequested = MAKEWORD( 1, 1 );
err = WSAStartup( wVersionRequested, &wsaData );加载套接字库
if ( err != 0 ) {
return;
}
if ( LOBYTE( wsaData.wVersion ) != 1 ||
HIBYTE( wsaData.wVersion ) != 1 ) {
WSACleanup()( );
return;
}
SOCKET sockClient=socket(AF_INET,SOCK_STREAM,0);创建套接字(socket)。
SOCKADDR_IN addrSrv;
addrSrv.sin_addr.S_un.S_addr=inet_addr("127.0.0.1");
addrSrv.sin_family=AF_INET;
addrSrv.sin_port=htons(6000);
connect(sockClient,(SOCKADDR*)&addrSrv,sizeof(SOCKADDR));向服务器发出连接请求(connect)。
char recvBuf[100];和服务器端进行通信(send/recv)。
recv(sockClient,recvBuf,100,0);
printf("%s\n",recvBuf);
send(sockClient,"This is lisi",strlen("This is lisi")+1,0);
closesocket(sockClient);关闭套接字。
WSACleanup()();//必须调用这个函数清除参数
}
本站所有资源都是由网友投搞发布,或转载各大下载站,请自行检测软件的完整性!本站所有资源仅供学习与参考,请勿用于商业用途,否则产生的一切后果将由您自己承担!如有侵权请联系我们删除下架,联系方式:admin@php.cn
