#include "stdafx.h"
#include <stdio.h>
#include <Winsock2.h>
void main()
{
SOCKET socket1;
WSADATA wsaData;
if (WSAStartup(MAKEWORD(2, 1), &wsaData)) //调用Windows Sockets DLL
{
printf("Winsock无法初始化!\n");
WSACleanup();
return;
}
struct sockaddr_in local;
struct sockaddr_in from;
int fromlen = sizeof(from);
local.sin_family = AF_INET;
local.sin_port = htons(27015); ///监听端口
local.sin_addr.s_addr = INADDR_ANY; ///本机
socket1 = socket(AF_INET, SOCK_DGRAM, 0);
bind(socket1, (struct sockaddr*)&local, sizeof(local));
while (1)
{
char buffer[1024] = "\0";
printf("waiting-------------\n");
if (recvfrom(socket1, buffer, sizeof(buffer), 0, (struct sockaddr*)&from, &fromlen) != SOCKET_ERROR)
{
printf("Received datagram from %s--%s\n", inet_ntoa(from.sin_addr), buffer);
sendto(socket1, buffer, sizeof(buffer), 0, (struct sockaddr*)&from, fromlen);
}
}
closesocket(socket1);
}
#include <stdio.h>
#include <Winsock2.h>
void main()
{
SOCKET socket1;
WSADATA wsaData;
if (WSAStartup(MAKEWORD(2, 1), &wsaData)) //调用Windows Sockets DLL
{
printf("Winsock无法初始化!\n");
WSACleanup();
return;
}
struct sockaddr_in local;
struct sockaddr_in from;
int fromlen = sizeof(from);
local.sin_family = AF_INET;
local.sin_port = htons(27015); ///监听端口
local.sin_addr.s_addr = INADDR_ANY; ///本机
socket1 = socket(AF_INET, SOCK_DGRAM, 0);
bind(socket1, (struct sockaddr*)&local, sizeof(local));
while (1)
{
char buffer[1024] = "\0";
printf("waiting-------------\n");
if (recvfrom(socket1, buffer, sizeof(buffer), 0, (struct sockaddr*)&from, &fromlen) != SOCKET_ERROR)
{
printf("Received datagram from %s--%s\n", inet_ntoa(from.sin_addr), buffer);
sendto(socket1, buffer, sizeof(buffer), 0, (struct sockaddr*)&from, fromlen);
}
}
closesocket(socket1);
}