vc++ 6.0可以用C语言做socket编程吗?文件名要.c。
vc++ 6.0可以用C语言做socket编程吗?文件名要.c。在线等。
这段代码保存成.cpp可以在VC++6.0运行。保存成.c就编译不通过了。
如果我想保存成.c的,应该怎么修改啊?
在线等。
------解决方案--------------------
VC++不知道行不行,你可以装个GCC试试
------解决方案--------------------
其实没必要改成.c,.cpp也可以是C代码
------解决方案--------------------
当然可以
------解决方案--------------------
------解决方案--------------------
- C/C++ code
#include <stdio.h> #include <Winsock2.h> #pragma comment (lib,"ws2_32.lib") void main() { WORD wVersionRequested; WSADATA wsaData; int err; wVersionRequested = MAKEWORD( 1, 1 ); err = WSAStartup( wVersionRequested, &wsaData ); if ( err != 0 ) { return; } if ( LOBYTE( wsaData.wVersion ) != 1 || HIBYTE( wsaData.wVersion ) != 1 ) { WSACleanup( ); return; } SOCKET sockSrv=socket(AF_INET,SOCK_STREAM,0); SOCKADDR_IN addrSrv; addrSrv.sin_addr.S_un.S_addr=htonl(INADDR_ANY); addrSrv.sin_family=AF_INET; addrSrv.sin_port=htons(6000); bind(sockSrv,(SOCKADDR*)&addrSrv,sizeof(SOCKADDR)); listen(sockSrv,5); SOCKADDR_IN addrClient; int len=sizeof(SOCKADDR); while(1) { SOCKET sockConn=accept(sockSrv,(SOCKADDR*)&addrClient,&len); char sendBuf[50]; sprintf(sendBuf,"Welcome %s to here!",inet_ntoa(addrClient.sin_addr)); send(sockConn,sendBuf,strlen(sendBuf)+1,0); char recvBuf[50]; recv(sockConn,recvBuf,50,0); printf("%s\n",recvBuf); closesocket(sockConn); } }
这段代码保存成.cpp可以在VC++6.0运行。保存成.c就编译不通过了。
如果我想保存成.c的,应该怎么修改啊?
在线等。
------解决方案--------------------
VC++不知道行不行,你可以装个GCC试试
------解决方案--------------------
其实没必要改成.c,.cpp也可以是C代码
------解决方案--------------------
当然可以
------解决方案--------------------
------解决方案--------------------
- C/C++ code
#include <stdio.h> #include <Winsock2.h> #pragma comment (lib,"ws2_32.lib") void main() { WORD wVersionRequested; WSADATA wsaData; int err; SOCKET sockSrv; SOCKET sockConn; SOCKADDR_IN addrSrv; SOCKADDR_IN addrClient; char sendBuf[50]; char recvBuf[50]; int len; wVersionRequested = MAKEWORD( 1, 1 ); err = WSAStartup( wVersionRequested, &wsaData ); if ( err != 0 ) { return; } if ( LOBYTE( wsaData.wVersion ) != 1 || HIBYTE( wsaData.wVersion ) != 1 ) { WSACleanup( ); return; } sockSrv = socket(AF_INET,SOCK_STREAM,0); addrSrv.sin_addr.S_un.S_addr = htonl(INADDR_ANY); addrSrv.sin_family = AF_INET; addrSrv.sin_port = htons(6000); bind(sockSrv,(SOCKADDR*)&addrSrv,sizeof(SOCKADDR)); listen(sockSrv,5); len = sizeof(SOCKADDR); while(1) { sockConn = accept(sockSrv,(SOCKADDR*)&addrClient,&len); sprintf(sendBuf,"Welcome %s to here!",inet_ntoa(addrClient.sin_addr)); send(sockConn,sendBuf,strlen(sendBuf)+1,0); recv(sockConn,recvBuf,50,0); printf("%s\n",recvBuf); closesocket(sockConn); } }
------解决方案--------------------
SOCKET不是类