// client1_ex.cpp: 定义控制台应用程序的入口点。
//
#include "stdafx.h"
#include <windows.h>
#include <stdio.h>
#include <iostream>
#include <string>
#include <string.h>
#include <fstream>
#include <vector>
#include <stdlib.h>
#include <deque>
#pragma comment (lib,"ws2_32")
using namespace std;
void myClint()
{
/*SOCKET socketClient = socket(AF_INET, SOCK_STREAM, IPPROTO_TCP);
if (socketClient == INVALID_SOCKET)
{
return;
}
SOCKADDR_IN servAddr;
servAddr.sin_family = AF_INET;
servAddr.sin_addr.S_un.S_addr = inet_addr("127.0.0.1");
servAddr.sin_port = htons(5656);
int retVal = connect(socketClient,(SOCKADDR*)&servAddr,sizeof(servAddr));
if (retVal == SOCKET_ERROR)
{
cout << "connect error" << endl;
return;
}
cout << "client connect success" << endl;*/
//创建socket
SOCKET sockclient = socket(AF_INET, SOCK_STREAM, IPPROTO_TCP);
if (INVALID_SOCKET == sockclient)
{
return;
}
//连接服务器,建立服务器端套接字地址
struct sockaddr_in addr = { 0 };
addr.sin_family = AF_INET;
addr.sin_port = htons(5678);
//对于inet_addr()函数,它是把“xxx.xxx.xxx.xxx”形式表示的IPV4地址,转换为IN_ADDR结构体能够
//接收的形式(unsigned long型,因为IN_ADDR结构体中的负责接收的S_addr成员变量的类型是unsigned long型)
addr.sin_addr.S_un.S_addr = inet_addr("127.0.0.1");//本机ip
//向服务器发出连接请求,当然我们也可以通过connet函数的返回值判断到底有无连接成功。
int iRetVal = connect(sockclient, (struct sockaddr*)&addr, sizeof(addr));
if (SOCKET_ERROR == iRetVal)
{
printf("服务器连接失败!");
closesocket(sockclient);
return;
}
printf("服务器连接成功!\n");
//数据收发
char buffer[256];
char a[1024] = {" "};
fstream in;
string fileName = (".../sendData.txt");//目录自行更改
in.open(fileName);
cout << fileName << " 的内容如下:" << endl;
while (!in.eof())
{
// in.getline(buffer, 256, '\n');//getline(char *,int,char) 表示该行字符达到256个或遇到换行就结束
//cout << buffer << endl;
//strcat_s(a, buffer);
//strcat_s(a, "\n");
in.getline(buffer, 256, '\n');//getline(char *,int,char) 表示该行字符达到256个或遇到换行就结束
cout << "buffer " << buffer << endl;
strcat_s(a, buffer);
strcat_s(a, "\n");
cout << "a " << a << endl;
}
in.close();
//客户端 先发后收
send(sockclient, a, sizeof(a), 0); //发送函数,可以通过返回值判断发送成功与否。
// //接收服务器回传的数据
//CHAR szRecv[100] = { 0 };
//recv(sockclient, szRecv, 100, 0); //接收函数
//printf("%s\n", szRecv);//表示以字符串的格式输出服务器端发送的内容。
// // getch();//暂停一下
// //关闭socket
closesocket(sockclient);
}
void sendData()
{
}
int main()
{
WSADATA wsa;
WSAStartup(MAKEWORD(2, 2), &wsa);
myClint();
WSACleanup();
system("pause");
return 0;
}
没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
收起资源包目录
socket.zip (57个子文件)
client1_ex
client1_ex.cpp 5KB
Debug
vc141.pdb 492KB
client1_ex.pch 2.88MB
client1_ex.new.obj.enc 275KB
vc141.idb 355KB
client1_ex.obj.enc 275KB
stdafx.obj 6KB
client1_ex.tlog
CL.read.1.tlog 34KB
link.read.1.tlog 3KB
link.write.1.tlog 682B
CL.write.1.tlog 754B
client1_ex.lastbuildstate 197B
link.command.1.tlog 1KB
CL.command.1.tlog 1KB
client1_ex.log 71B
client1_ex.obj 277KB
client1_ex.vcxproj 8KB
client1_ex.vcxproj.user 165B
stdafx.h 366B
stdafx.cpp 322B
client1_ex.vcxproj.filters 1KB
targetver.h 370B
server1_ex
server1_ex.vcxproj.user 165B
server1_ex.cpp 4KB
Debug
server1_ex.pch 2.88MB
server1_ex.log 71B
vc141.pdb 420KB
client1_ex.exe 107KB
server1_ex.obj.enc 64KB
server1_ex.tlog
server1_ex.lastbuildstate 197B
CL.read.1.tlog 34KB
link.read.1.tlog 3KB
link.write.1.tlog 958B
CL.write.1.tlog 754B
link.command.1.tlog 1KB
CL.command.1.tlog 1KB
client1_ex.pdb 636KB
vc141.idb 347KB
server1_ex.ilk 415KB
server1_ex.pdb 644KB
stdafx.obj 6KB
server1_ex.exe 47KB
server1_ex.obj 47KB
client1_ex.ilk 636KB
.vs
server1_ex
v15
ipch
AutoPCH
2c950ea93996e80f
EXE_COMMON.ipch 3.81MB
f572f048cedc2c86
SERVER1_EX.ipch 64.75MB
3a3d2c960a59d12e.ipch 3.5MB
72b8b0e2c81b4ea2.ipch 3.5MB
Solution.VC.db 652KB
.suo 49KB
Browse.VC.db 57.8MB
stdafx.h 366B
server1_ex.vcxproj.filters 1KB
server1_ex.sln 2KB
stdafx.cpp 322B
server1_ex.vcxproj 8KB
targetver.h 370B
共 57 条
- 1
资源评论
- wangyong190722018-07-20感谢楼主分享!
_s_tudent
- 粉丝: 0
- 资源: 4
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功