64,654
社区成员
发帖
与我相关
我的任务
分享
#include <sys/socket.h>
原型
int shutdown(int sockfd,int how);
#include <stdio.h>
#include <sys/types.h>
#include <sys/socket.h>
#include <netinet/in.h>
using namespace std;
int main(int argc, char* argv[])
{
printf("start!\n");
int socketListen = socket(AF_INET, SOCK_STREAM, 0);
sockaddr_in addrSvr;
addrSvr.sin_family = AF_INET;
addrSvr.sin_addr.s_addr = htonl(INADDR_ANY);
addrSvr.sin_port = htons(9000);
printf("bind...\n");
if(-1 == bind(socketListen, (sockaddr*)&addrSvr, sizeof(sockaddr)))
{
printf("bind error!\n");
return 0;
}
printf("listen,,,\n");
if(-1 == listen(socketListen, 5))
{
printf("listen error!\n");
return 0;
}
sockaddr addrClient;
socklen_t nLen = sizeof(sockaddr);
printf("accept...\n");
//int sockConn = accept(socketListen, (sockaddr*)&addrClient, &nLen);
int sockConn = accept(socketListen, NULL, NULL);
while(1)
{
printf("in while\n");
char bufRecv[1024] = {0};
int len = recv(sockConn, bufRecv, 1023, 0);
if(len <= 0)
break;
printf("%s\n", bufRecv);
send(sockConn, bufRecv, len, 0);
}
printf("over!\n");
close(sockConn);
close(socketListen);
return 0;
}
::close(fd);