C语言 socket 传输
我需要用socket把客户端的信息传输到服务器端。最好能是1客户端和服务器端的程序代码2说一下要传输的信息是哪一部分IP地址又在哪里设置3要传输的部分是由WINDOWS的...
我需要用socket把客户端的信息传输到服务器端。
最好能是
1客户端和服务器端的程序代码
2说一下要传输的信息是哪一部分IP地址又在哪里设置
3要传输的部分是由WINDOWS的API采集的信息
谢谢! 展开
最好能是
1客户端和服务器端的程序代码
2说一下要传输的信息是哪一部分IP地址又在哪里设置
3要传输的部分是由WINDOWS的API采集的信息
谢谢! 展开
1个回答
展开全部
///////////////////////////////////////////
//server
#include <winsock2.h>
#include <stdio.h>
#pragma comment(lib, "ws2_32.lib")
int main()
{
WSADATA wsaData;
int ret = WSAStartup(MAKEWORD(2,2), &wsaData);
SOCKET s = socket(AF_INET, SOCK_STREAM, IPPROTO_TCP);
//本地地址信息
sockaddr_in localAddr;
localAddr.sin_family = AF_INET;
localAddr.sin_port = htons(5000); //本地端口
localAddr.sin_addr.S_un.S_addr = inet_addr("127.0.0.1");
if(!bind(s,(sockaddr *)&localAddr,sizeof(sockaddr)))
printf("bind ok\n");
//远程主机地址
sockaddr_in remoteAddr;
int remoteAddrLen = sizeof(sockaddr);
listen(s,5);
SOCKET remoteSocket;
while(1)
{
remoteSocket = accept(s,(sockaddr *)&remoteAddr,&remoteAddrLen);
if(remoteSocket!= -1)
break;
}
printf("connection from remote\n");
char buf[100] = { 0 };
int bufLen = 100;
recv(remoteSocket, buf, bufLen, 0);
printf("%s", buf);
system("pause");
return 0;
}
//////////
//client
/////////
#include <winsock2.h>
#include <stdio.h>
#pragma comment(lib, "ws2_32.lib")
int main()
{
WSADATA wsaData;
int ret = WSAStartup(MAKEWORD(2,2), &wsaData);
SOCKET s = socket(AF_INET, SOCK_STREAM, IPPROTO_TCP);
//本地地址信息
sockaddr_in localAddr;
localAddr.sin_family = AF_INET;
localAddr.sin_port = htons(9999); //本地端口
localAddr.sin_addr.S_un.S_addr = inet_addr("127.0.0.1");
bind(s,(sockaddr *)&localAddr,sizeof(sockaddr));
//远程主机地址
sockaddr_in remoteAddr;
remoteAddr.sin_family = AF_INET;
remoteAddr.sin_port = htons(5000); //远程端口
remoteAddr.sin_addr.S_un.S_addr = inet_addr("127.0.0.1");// 远程IP地址
ret = connect(s,(sockaddr *)&remoteAddr,sizeof(sockaddr));
if(!ret) {
printf("connection ok\n");
}
ret = send(s, "hello", 6, 0);
printf("%d bytes sended\n", ret);
closesocket(s);
WSACleanup();
system("pause");
return 0;
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询