1
這是一個非常基本的問題(希望)有關在Windows,C++中使用recvfrom()。recvfrom()不返回收到的字節數
我正在實現一個非常基本的UDP函數,它發送一條消息,然後接收一個字符消息作爲回報。當我調用recvfrom()時,我得到適當的消息,但該函數不返回接收到的字節數(字符數)。相反,它返回0 片段:
sendto(sock, "10000;1;Chris\0", 14, 0,
(struct sockaddr FAR *) &sin, sizeof(sin));
if(nchars = recvfrom(sock, buf, LINELEN, 0, NULL, NULL) < 0)
errexit("recvfrom failed: error %d\n", GetLastError());
buf[nchars] = '\0';
我回消息需要附加一個空字符,但nchars不斷恢復爲0,使這個困難。任何想法爲什麼recvfrom()不會返回接收到的字節數?
當然,如果'recvfrom'返回零,你實際上沒有收到任何東西。我非常懷疑'recvfrom'是如此根本的問題 - 畢竟,這很可能是您的瀏覽器正在使用什麼來查看此頁面... – 2013-02-25 00:06:55