windows下C语言实现soket连接-客户端
2016-03-29 10:54
477 查看
#include <stdio.h>
#include <winsock2.h>
#pragma comment(lib,"ws2_32.lib")
int main(int argc, char* argv[])
{
WORD sockVersion = MAKEWORD(2,2);
WSADATA data;
SOCKET sclient;
struct sockaddr_in server_addr;
char *sendData = "你好,TCP服务端,我是客户端!\n";
char recData[255];
int iRet = 0;
if(WSAStartup(sockVersion, &data) != 0)
{
return 0;
}
sclient = socket(AF_INET, SOCK_STREAM, IPPROTO_TCP);
if(sclient == INVALID_SOCKET)
{
printf("invalid socket !");
return 0;
}
server_addr.sin_family = AF_INET;
server_addr.sin_port = htons(8888);
server_addr.sin_addr.S_un.S_addr = inet_addr("127.0.0.1");
if (connect(sclient, (LPSOCKADDR)&server_addr, sizeof(server_addr)) == SOCKET_ERROR)
{
printf("connect error !");
closesocket(sclient);
return 0;
}
send(sclient, sendData, strlen(sendData), 0);
iRet = recv(sclient, recData, 255, 0);
if(iRet > 0)
{
recData[iRet] = 0x00;
printf(recData);
}
closesocket(sclient);
WSACleanup();
return 0;
}
#include <winsock2.h>
#pragma comment(lib,"ws2_32.lib")
int main(int argc, char* argv[])
{
WORD sockVersion = MAKEWORD(2,2);
WSADATA data;
SOCKET sclient;
struct sockaddr_in server_addr;
char *sendData = "你好,TCP服务端,我是客户端!\n";
char recData[255];
int iRet = 0;
if(WSAStartup(sockVersion, &data) != 0)
{
return 0;
}
sclient = socket(AF_INET, SOCK_STREAM, IPPROTO_TCP);
if(sclient == INVALID_SOCKET)
{
printf("invalid socket !");
return 0;
}
server_addr.sin_family = AF_INET;
server_addr.sin_port = htons(8888);
server_addr.sin_addr.S_un.S_addr = inet_addr("127.0.0.1");
if (connect(sclient, (LPSOCKADDR)&server_addr, sizeof(server_addr)) == SOCKET_ERROR)
{
printf("connect error !");
closesocket(sclient);
return 0;
}
send(sclient, sendData, strlen(sendData), 0);
iRet = recv(sclient, recData, 255, 0);
if(iRet > 0)
{
recData[iRet] = 0x00;
printf(recData);
}
closesocket(sclient);
WSACleanup();
return 0;
}
相关文章推荐
- 函数返回数组问题
- C++解决大整数相加问题
- C++ bitset类的使用与简介
- c++ 基本类型大小
- C++位操作符
- 【C/C++】malloc()
- c++适配器
- 自己实验C++
- C语言(浮点精度)
- C++ ofstream和ifstream详细用法
- this指针 C++
- configure: error: C++ preprocessor "/lib/cpp" fails sanity check
- C++与Java的输入问题
- C++ # 条件编译的理解
- c的详细学习(1)C语言概述
- 2016年,C语言该怎样写
- C++中FTP上传功能(仅用系统库)
- C++学习笔记
- C语言实现整数四则运算表达式的计算
- c++上机作业测试体重是否标准并输出相关提示