Re: [問題] socket recv buffer
※ 引述《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
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 2 之 2 篇):
LinuxDev 近期熱門文章
PTT數位生活區 即時熱門文章