作者hakka (hakka)
看板LinuxDev
标题Re: [问题] socket recv buffer
时间Fri Sep 28 11:02:23 2007
※ 引述《Racci (Another Day...)》之铭言:
: 想请大家帮忙看一小段unix socket程式
: nLen = recv(rsock, szReadBuffer, sizeof(szReadBuffer), 0);
^^^^
: if ( nLen > 0)
: {
: printf("Client Request: %s \r\n", szReadBuffer);
: szReadBuffer[nLen] = '\0';
: }
: else
: {
: printf("Recv Error");
: }
: 我利用recv来收client端所送来的资料
: nLen是5
: 但在printf时 szReadBuffer却没有显示任何东西 只显示
: Client Request:
: 想请问有人知道这是为什麽吗?
: ps. 此为server端的程式, 在unix环境下执行
: client是用java 在windows下面执行的
: 先谢谢大家!!
改用 recvfrom 看看
我也写过类似的程式,後来发现使用 recv 的话,里面的 szReadBuffer
在存取上会有问题
改用 recvfrom 就 ok 了
ssize_t recvfrom(int socket, void *buffer, size_t length, int flags,
struct sockaddr *address, socklen_t *address_len);
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 210.202.196.162