大家看一下为什么编译通不过
#include <winsock2.h>
#include <stdio.h>
int main()
{
WSADATA wsaData;
SOCKET ListeningSocket;
SOCKET NewConnection;
SOCKADDR_IN ServerAddr;
SOCKADDR_IN ClientAddr;
int ClientAddrLen;
int Port = 5150;
int Ret;
char DataBuffer[1024];
if ((Ret = WSAStartup(MAKEWORD(2,2), &wsaData)) != 0)
{
printf("WSAStartup failed with error %d\n", Ret);
return 0;
}
if ((ListeningSocket = socket(AF_INET, SOCK_STREAM, IPPROTO_TCP))
== INVALID_SOCKET)
{
printf("socket failed with error %d\n", WSAGetLastError());
WSACleanup();
return 0;
}
ServerAddr.sin_family = AF_INET;
ServerAddr.sin_port = htons(Port);
ServerAddr.sin_addr.s_addr = htonl(INADDR_ANY);
if (bind(ListeningSocket, (SOCKADDR *)&ServerAddr, sizeof(ServerAddr))
== SOCKET_ERROR)
{
printf("bind failed with error %d\n", WSAGetLastError());
closesocket(ListeningSocket);
WSACleanup();
return 0;
}
if (listen(ListeningSocket, 5) == SOCKET_ERROR)
{
printf("listen failed with error %d\n", WSAGetLastError());
closesocket(ListeningSocket);
WSACleanup();
return 0;
}
printf("We are awaiting a connection on port %d.\n", Port);
if ((NewConnection = accept(ListeningSocket, (SOCKADDR *) &ClientAddr,
&ClientAddrLen)) == INVALID_SOCKET)
{
printf("accept failed with error %d\n", WSAGetLastError());
closesocket(ListeningSocket);
WSACleanup();
return 0;
}
printf("We successfully got a connection from %s:%d.\n",
inet_ntoa(ClientAddr.sin_addr), ntohs(ClientAddr.sin_port));
closesocket(ListeningSocket);
printf("We are waiting to receive data...\n");
if ((Ret = recv(NewConnection, DataBuffer, sizeof(DataBuffer), 0))
== SOCKET_ERROR)
{
printf("recv failed with error %d\n", WSAGetLastError());
closesocket(NewConnection);
WSACleanup();
return 0;
}
printf("We successfully received %d byte(s).\n", Ret);
printf("We are now going to close the client connection.\n");
closesocket(NewConnection);
WSACleanup();
}
问题点数:20、回复次数:6Top
1 楼akiko(弥弥)回复于 2003-11-02 20:16:11 得分 6
project--setting--link--Object/library modules加上ws2_32.libTop
2 楼ymcymc(小三子)回复于 2003-11-02 20:21:03 得分 0
忘说了在DEV C++下编译,应该怎样改Top
3 楼chenwhenlong(needways)回复于 2003-11-02 20:27:03 得分 6
#pragma comment(lib, "ws2_32.lib")Top
4 楼ymcymc(小三子)回复于 2003-11-02 20:49:32 得分 0
还是不行啊,我在硬盘查找根本没有WS2_32.LIB这个文件,是不是哪装的不对?Top
5 楼ymcymc(小三子)回复于 2003-11-02 23:03:42 得分 0
UP,第一次练习帮看一下Top
6 楼zming()回复于 2003-11-02 23:26:44 得分 8
装的DEV C++,从没装过VC++?
那么请安装 Microsoft Platform SDK,Microsoft网站上有下载,其它地方也有,自己搜一下。
安装完毕后,将其include与lib的路径加入到你的Dev C++中。
Top




