2 xiaogou12138 xiaogou12138 于 2016.04.10 22:11 提问

[新手]socket 10060 各位大神帮帮我我这个小菜鸟(刚玩CSDN)

自己电脑可以,换了同学电脑就10060

/*服务端*/
#include
#include
#include
#include

#pragma comment (lib,"Ws2_32.lib")

void main()
{

//初始化socket
WSADATA wsaData;
WSAStartup(MAKEWORD(2,2),&wsaData);

//创建socket
SOCKET listenSocket = socket(AF_INET, SOCK_STREAM, IPPROTO_TCP);
if (listenSocket == SOCKET_ERROR){
    printf("Error->socket(s)\n");
    exit(0);
}
printf("OK->socket(s)\n");;

//设置服务器协议,IP地址,端口
SOCKADDR_IN ServAddr;
ServAddr.sin_family = AF_INET;
ServAddr.sin_addr.s_addr = inet_addr("172.30.84.37");
ServAddr.sin_port = htons(9999);

//绑定(SOCKADDR_IN->SOCKET)
if (bind(listenSocket, (SOCKADDR*)&ServAddr, sizeof(ServAddr)) == SOCKET_ERROR)
{
    printf("Error->bind(s)\n");
    exit(0);
}
printf("OK->bind(s)\n");

//监听端口
if (listen(listenSocket, 10) == SOCKET_ERROR)
{
    printf("Error->listen(s)\n");
    exit(0);
}
printf("OK->listen(s)\n");

//确认接收请求,知道成功
SOCKET acceptSocket;
while (true)
{
    if ((acceptSocket=accept(listenSocket, (SOCKADDR*)NULL, NULL))== SOCKET_ERROR)
    {
        printf("Error->accept(s)\n");
        continue;
    }
    break;

}
printf("OK->accept(s)\n");


//发送命令
char sendbuf[100];
while (scanf("%s", sendbuf))
{
    if (strcmp(sendbuf, "Bye") == 0)
        break;
    send(acceptSocket, sendbuf, strlen(sendbuf) + 1, 0);
}

closesocket(acceptSocket);
WSACleanup();
closesocket(listenSocket);

}

/*客户端*/
#include
#include
#include
#include
#include

#pragma comment (lib,"Ws2_32.lib")

void main()
{
//初始化
WSADATA wsaData;
WSAStartup(MAKEWORD(2, 2), &wsaData);

//创建socket
SOCKET connectSocket = socket(AF_INET, SOCK_STREAM, IPPROTO_TCP);
if (connectSocket==SOCKET_ERROR)
{
    printf("Error->socket(c)\n");
    exit(0);
}
printf("OK->socket(c)\n");

//设置服务器协议,IP地址,端口
SOCKADDR_IN ServAddr;
ServAddr.sin_family = AF_INET;
ServAddr.sin_addr.s_addr = inet_addr("172.30.84.37");
ServAddr.sin_port = htons(9999);

//连接服务器
if (connect(connectSocket, (SOCKADDR*)&ServAddr, sizeof(ServAddr)) == SOCKET_ERROR)
{
    printf("Error->connect(c)\n");
    exit(0);
}
printf("OK->connect(c)\n");

//接收命令

while (true)
{
    char recvbuf[100];
    int n = recv(connectSocket, recvbuf, 100, 0);
    if (n <= 0)
        break;
    printf("%d\n", n);
    recvbuf[n] = 0;
    printf("%s\n", recvbuf);
}

::Sleep(10 * 1000);
WSACleanup();
closesocket(connectSocket);

}

1个回答

devmiao
devmiao   Ds   Rxr 2016.04.10 22:36
Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
微信小程序教程整理合集 从菜鸟到大神
原文的链接再 http://bbs.larkapp.com/thread-9183-1-1.html 教程系列一: 微信小程序 轮播图 swiper图片组件 微信小程序 开发 微信开发者工具 快捷键 微信小程序 页面跳转 传递参数 微信小程序 如何获取时间 微信小程序之数据绑定(五) 微信小程序之触控事件(四) 微信小程序之生命周期(三) 微信小程序开发工具使用与设计
帮帮我这个小菜鸟行吗~~~???
我用ADO和SQL相连,连是连上了,可写入数据的时候就出问题了,运行的时候数据能写入表中,可还是出错,说ADOConnection1没有找到返回值什么的,可数据表里面还是能找到刚才输入的数据,这是为什么/??各位高手帮帮我行吗????谢谢了~!!!
java从菜鸟到大神的成神之路学习路线_me
JAVA从菜鸟到大神的学习路线
Socket error 10060
Socket error 10060 - Connection timed out   //超时 错误原因可能是: 要访问的网站有问题,关机了或者服务未启动等等; 到网站的网络有问题,连接不上; 防火墙阻挡了连接。  解决方法:先两台机子先互ping一下,看是否通,不通的话,我就重启了,呵呵!我这是一方将服务关掉了,有一台机子只能发
java聊天小程序
java聊天小程序(socket编程实例)。用socket编程的小实例,适合初学者。各位大神,别拍砖!
Java实现Hadoop大表join
这是一个课堂作业,用来join订单和用户,在这里记录下来。源数据csv order.csv ID_O,Order_No,ID_P 1,24351,2 2,43567,1 3,77895,156 person.csv Id_P,LastName,FirstName,Address,City 1,Snow,Jon,GreatWall,Winterfell 2, Lannister,Tyrion,Cast
菜鸟到大神的上位历程,即学即用走向人生巅峰(大神学习经验)
结合个人经历总结的前端入门方法,总结从零基础到具备前端基本技能的道路、学习方法、资料。由于能力有限,不能保证面面俱到,只是作为入门参考,面向初学者,让初学者少走弯路。     互联网的快速发展和激烈竞争,用户体验成为一个重要的关注点,导致专业前端工程师成为热门职业,各大公司对前端工程师的需求量都很大,要求也越来越高,优秀的前端工程师更是稀缺。个人感觉前端入门相对容易,但是也需要系统地认
从前端菜鸟到大神
联网的快速发展和激烈竞争,用户体验成为一个重要的关注点,导致专业前端工程师成为热门职业,各大公司对前端工程师的需求量都很大,要求也越来越高,优秀的前端工程师更是稀缺。个人感觉前端入门相对容易,但是也需要系统地认真学习,在打好基础后坚持学习,成为优秀前端工程师也只是时间问题。 学习任何知识最重要的都是兴趣,如果经过一段时间的学习感觉不喜欢,那可能强迫自己学习是很痛苦的,效果也不会好,毕竟这很可
爬虫时碰到的socket.error: [Errno 10060]错误的原因以及解决方法
socket.error: [Errno 10060]原因是爬取页面过快造成暂时被网站ban掉的情况,设置time.sleep(1)就好,后来发现ban的时间不定,就自己动手写了个暴力的做法def avoid_10060(fun): error_time = 0 while True: time.sleep(1) try: re
新手入门,学习java从小白到大神应该从何做起?
编程入门先学什么?关于编程,关于编程的基础语言,想要学习的朋友,一定会多多少少了解一些。像 C、C++、Python和Java四种都是通用的编程语言,而JavaScript和PHP算是Web环境的专用编程语言。但其实,编程的语言有很多种,想要入门编程,要学习的编程语言也很多。在这里我就简单总结下编程入门的一系列学习方法。        上面我们提到,学习编程的语言有很多种,像C、C++、Pyth