资源简介
一个简单的socket通讯程序, 包括服务端和客户端程序。建立客户端和客户端c++空项目,分别添加socketClient.cpp和sockServer.cpp, 根据注释配置,编译生成后就可以执行。客户端程序在visual studio 2015和2013上编译通过,服务端程序在visual studio 2015和2008上编译通过。网上的一些程序在编译时会出错,或者运行时会中断,希望这个程序对你会有所帮助。
代码片段和文件信息
#include
#include
#include
#include “Ws2tcpip.h“
using namespace std;
#pragma comment(lib “ws2_32.lib“)
//visual studio 2015上通过
int main(int argc char* argv[])
{
/*设置服务端的IP与Port*/
char * serverip = “192.168.50.216“;
int svrport = 5099;
WORD sockVersion = MAKEWORD(2 2);
WSADATA data;
/*Windows Sockets Asynchronous的启动命令*/
if (WSAStartup(sockVersion &data) != 0)
{
return 0;
}
/*设定服务器地址 退出时输入exit*/
in_addr ipv4addr;
InetPton(AF_INET serverip &ipv4addr);
sockaddr_in serAddr;
serAddr.sin_family = AF_INET;
serAddr.sin_addr = ipv4addr;
serAddr.sin_port = htons(svrport);
//serAddr.sin_addr.S_un.S_addr = inet_addr(serverip);
while (true) {
SOCKET sclient;
string str;
int count = 0;
int ret = 0;
char recData[255];
/*接收用户输入信息*/
printf(“input your message: “);
getline(cin str);
if (str.length() == 0) {
continue;
}
/*exit就退出*/
if (str.compare(“exit“) == 0) break;
/*获得socket通道*/
sclient = socket(AF_INET SOCK_STREAM IPPROTO_TCP);
if (sclient == INVALID_SOCKET)
{
printf(“invalid socket!\n“);
continue;
}
/*连接*/
if (connect(sclient (sockaddr *)&serAddr sizeof(serAddr)) == SOCKET_ERROR)
{ /*连接失败*/
printf(“connect error !\n“);
closesocket(sclient);
continue;
}
/*发送到服务端*/
const char * sendData = str.data();
count = send(sclient sendData strlen(sendData) 0);
if (count == -1) {
printf(“send data error。\n“);
}
/*接收服务端的输出*/
ret = recv(sclient recData 255 0);
if (ret>0) {
recData[ret] = 0x00;
printf(“received: “);
printf(recData);
printf(“\n“);
}
}
/*终止Winsock 2 DLL (Ws2_32.dll)*/
WSACleanup();
return 0;
}
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 2258 2017-05-11 09:15 socketServer.cpp
文件 1826 2017-05-11 09:12 socketClient.cpp
- 上一篇:线性反馈移位寄存器
- 下一篇:c语言实现病例管理系统
相关资源
- c++ socket类封装(udp/tcp)
- websocket编程C语言源码
- C语言+Socket实现文件传输
- MFC利用CSOCKET实现的小小聊天室
- socket应用三 用C语言编写发送邮件程序
- 实现socket简易的聊天程序
- socket应用二 用C语言写远程屏幕监视程
- 套接字编程Socketc++实现源码
- c++ socket编程服务端代码!!!
- opencv+udp+c++ 的摄像头实时传输显示源
- C++原始SOCKET编写的SYN Flood 源码
- 异步网络通信 用C++
- window c语言编写的多线程的Socket局域网
- 基于Qt5.9Creator的一个简单socket通信C
- UR机械臂与PC通讯程序socket2018_03_16
- C++实现HTTP(两种方式:WinInet和Socke
- c++/MFC CSocket仿QQ聊天软件,实现1对1聊
- linux环境下的QQ聊天系统
- linux局域网聊天软件server+client 源码
- tcp socket实现单进程单线程 高并发服务
- (转)VC老版主薄荷用VC++6.0写的TCP
- 基于linux系统socket网络五子棋对战
- MFC socket编程MyQQ
- 远程文件--select模式
- c++/MFC CSocket仿QQ聊天软件,实现1对1聊
- MFC基于TCP/IP协议的聊天室源代码 (继
- 服务端Node.js和VC++程序间通过SOCKET通信
- 基于udp的P2P聊天工具MFC实现
- VC++异步通信的socket类
- Windows下Socket文件数据传输
评论
共有 条评论