定义socket变量的出错问题
#include<Winsock2.h>
#pragma comment(lib,"ws2_32")
#include<stdio.h>
int main(int argc,char* argv[])
{
WSADATA wsaData;
WORD sockVersion=MAKEWORD(2,2);
//加载WINSOCK库
if(WSAStartup(sockVersion,&wsaData)!=0)
return 0;
//创建套接字
SOCKET sListen=socket(AF_INET,SOCK_STREAM,IPPROTO_TCP);
if(sListen==INVALID_SOCKET)
{
printf("socket error\n");
return 0;
}
sockaddr_in servAddr;
servAddr.sin_family=AF_INET;
servAddr.sin_port=htons(4500servAddr.sin_addr.S_un.S_addr=inet_addr("127.0.0.1");
以上是程序的开头,但编译后程序出现错误如下
C:\Program Files\Microsoft Visual Studio\MyProjects\test\Text1.c(12) : error C2275: 'SOCKET' : illegal use of this type as an expression
c:\program files\microsoft visual studio\vc98\include\winsock2.h(85) : see declaration of 'SOCKET'
C:\Program Files\Microsoft Visual Studio\MyProjects\test\Text1.c(12) : error C2146: syntax error : missing ';' before identifier 'sListen'
C:\Program Files\Microsoft Visual Studio\MyProjects\test\Text1.c(12) : error C2065: 'sListen' : undeclared identifier
C:\Program Files\Microsoft Visual Studio\MyProjects\test\Text1.c(19) : error C2065: 'sockaddr_in' : undeclared identifier
C:\Program Files\Microsoft Visual Studio\MyProjects\test\Text1.c(19) : error C2146: syntax error : missing ';' before identifier 'servAddr'
C:\Program Files\Microsoft Visual Studio\MyProjects\test\Text1.c(19) : error C2065: 'servAddr' : undeclared identifier
C:\Program Files\Microsoft Visual Studio\MyProjects\test\Text1.c(20) : error C2224: left of '.sin_family' must have struct/union type
C:\Program Files\Microsoft Visual Studio\MyProjects\test\Text1.c(21) : error C2224: left of '.sin_port' must have struct/union type
C:\Program Files\Microsoft Visual Studio\MyProjects\test\Text1.c(22) : error C2224: left of '.sin_addr' must have struct/union type
C:\Program Files\Microsoft Visual Studio\MyProjects\test\Text1.c(23) : error C2065: 'sClient' : undeclared identifier
C:\Program Files\Microsoft Visual Studio\MyProjects\test\Text1.c(23) : error C2065: 'sockaddr' : undeclared identifier
C:\Program Files\Microsoft Visual Studio\MyProjects\test\Text1.c(23) : error C2059: syntax error : ')'
C:\Program Files\Microsoft Visual Studio\MyProjects\test\Text1.c(31) : error C2143: syntax error : missing ')' before '('
C:\Program Files\Microsoft Visual Studio\MyProjects\test\Text1.c(31) : error C2091: function returns function
C:\Program Files\Microsoft Visual Studio\MyProjects\test\Text1.c(31) : error C2373: 'send' : redefinition; different type modifiers
c:\program files\microsoft visual studio\vc98\include\winsock2.h(1787) : see declaration of 'send'
请问各位大哥为什么我的socket编译会出现错误?