有容乃大 无欲则刚
C++博客
首页
新随笔
联系
聚合
管理
10 Posts :: 0 Stories :: 1 Comments :: 0 Trackbacks
常用链接
我的随笔
我的评论
我参与的随笔
留言簿
给我留言
查看公开留言
查看私人留言
随笔档案
(10)
2009年7月 (5)
2009年6月 (5)
最新随笔
1. 字符聊天程序
2. C++ TCP 通信
3. C++ UDP 通信
4. Socket
5. Hello word
6. C++ HelloWord 应该注意的问题
7. 七种访问控件的方式
8. 消息的分类
9. VS 快键总结
10. 画线程序笔记
搜索
积分与排名
积分 - 8681
排名 - 1250
最新随笔
1. 字符聊天程序
2. C++ TCP 通信
3. C++ UDP 通信
4. Socket
5. Hello word
6. C++ HelloWord 应该注意的问题
7. 七种访问控件的方式
8. 消息的分类
9. VS 快键总结
10. 画线程序笔记
最新评论
1. re: C++ UDP 通信
good!
--yh
阅读排行榜
1. C++ UDP 通信(3017)
2. C++ TCP 通信(2657)
3. C++ HelloWord 应该注意的问题(865)
4. Socket(346)
5. 字符聊天程序(345)
评论排行榜
1. C++ UDP 通信(1)
2. C++ TCP 通信(0)
3. 字符聊天程序(0)
4. 画线程序笔记(0)
5. VS 快键总结(0)
C++ TCP 通信
#include
<
Winsock2.h
>
#include
<
stdio.h
>
#pragma comment(lib,
"
ws2_32.lib
"
)
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 socksrv
=
socket(AF_INET,SOCK_STREAM,
0
);
SOCKADDR_IN addrsrv;
addrsrv.sin_addr.S_un.S_addr
=
htonl(INADDR_ANY);
addrsrv.sin_family
=
AF_INET;
addrsrv.sin_port
=
htons(
4444
);
bind(socksrv,(sockaddr
*
)
&
addrsrv,
sizeof
(SOCKADDR));
listen(socksrv,
5
);
SOCKADDR_IN addrclient;
int
len
=
sizeof
(SOCKADDR);
while
(
1
)
{
SOCKET sockconn
=
accept(socksrv,(SOCKADDR
*
)
&
addrclient,
&
len);
char
sendbuf[
100
];
sprintf(sendbuf,
"
welcome %s to TCP server
"
,inet_ntoa(addrclient.sin_addr));
send(sockconn,sendbuf,strlen(sendbuf)
+
1
,
0
);
char
recvbuf[
100
];
recv(sockconn,recvbuf,
100
,
0
);
printf(
"
%s\n
"
,recvbuf);
closesocket(sockconn);
}
}
#include
<
Winsock2.h
>
#include
<
stdio.h
>
#pragma comment(lib,
"
ws2_32.lib
"
)
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
);
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(
4444
);
connect(sockClient,(SOCKADDR
*
)
&
addrSrv,
sizeof
(SOCKADDR));
char
recvBuf[
100
];
recv(sockClient,recvBuf,
100
,
0
);
printf(
"
%s\n
"
,recvBuf);
send(sockClient,
"
this is huyvanull's client
"
,strlen(
"
this is huyvanull's client
"
)
+
1
,
0
);
closesocket(sockClient);
WSACleanup();
}
posted on 2009-07-21 20:16
huyvanpull
阅读(2657)
评论(0)
编辑
收藏
引用
只有注册用户
登录
后才能发表评论。
【推荐】100%开源!大型工业跨平台软件C++源码提供,建模,组态!
网站导航:
博客园
IT新闻
BlogJava
知识库
博问
管理
Powered by:
C++博客
Copyright © huyvanpull