Re: [問題] socket在第一次recv後 會自動斷線
YEAH~~~~~~~~~
我終於發現癥結了 Orz
最根本的原因就是 send()啊!!!
因為 len 設定成 MAXLINE = 65535
於是底層的buffer就爆炸了
大家可以收工了
--
對於花這麼久時間才發現問題的自己 感到十分悔恨......
Q________Q
: do{
: if( send(s, send_buf, MAXLINE, 0) == SOCKET_ERROR)
^^^^^^^^^^^^^^^^^^^^^^^^^
: cerr << "Send message error\n" << send_buf;
: else
: cout << "Client send:\n" << send_buf;
: if( (n = recv(s, recv_buf, MAXLINE, 0)) == 0){
: cerr << "Connection closed\n";
: break;
: }
: else if( n == SOCKET_ERROR){
: cerr << "Received error\n" << WSAGetLastError();
: break;
: }
: else{
: recv_buf[n] = '\0';
: cout << recv_buf;
: }
: }while( fgets(send_buf, MAXLINE, stdin) != NULL );
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 61.231.131.41
推
06/29 21:31, , 1F
06/29 21:31, 1F
推
06/29 21:34, , 2F
06/29 21:34, 2F
討論串 (同標題文章)
完整討論串 (本文為第 4 之 5 篇):