반응형
안녕하세요 허언증입니다.
참고
recv()
recv() 함수는 소켓으로부터 데이터를 수신합니다.
#include<winscok2.h>
int recv(int s, void *buf, size_t len, int flags);
int s | : 소켓 디스크립터 |
void *buf | : 수신할 버퍼 포인터 데이터 |
size_t len | : 버퍼의 바이트 단위 크기 |
int flags | : 아래와 같은 옵션을 사용할 수 있습니다. |
recvfrom()
recvfrom() 함수는 UDP/IP 통신에서 소켓으로부터 데이터를 수신합니다.
#include<winscok2.h>
int recvfrom(int s, void *buf, size_t len, int flags, struct sockaddr *from, socklen_t *fromlen);
int s | : 소켓 디스크립터 |
void *buf | : 자료 수신을 위한 버퍼 포인터 |
size_t len | : 버퍼의 바이트 단위 길이 |
int flags | : 수신을 위한 옵션으로 아래의 값을 사용할 수 있습니다. |
sockaddr *to | : 전송한 곳의 주소 정보 |
socklen_t tolen | : 주조 정보의 크기 |
recv() 와 recvfrom() 함수의 차이점은 address를 지정할 수 있는지 없는지 입니다.
recv()는 flag 값을 받아서 상황별 예외 처리를 할 때 flag값을 따로 지정해서 이용가능합니다.
recv()는 지정을 못 하고, recvfrom()은 할 수 있습니다. 그래서 recv()함수는 TCP프로토콜에 사용을 많이하고 ,
recvfrom()은 UDP프로토콜에 사용을 많이 합니다.
반응형
'# Language > [ C & C++ ]' 카테고리의 다른 글
[C & C++] select() , WSAEventSelect() 함수 (feat.FD_set) (0) | 2019.12.12 |
---|---|
[C & C++] send(), recv() / sendto(), recvfrom() 정리 (0) | 2019.12.05 |
[C & C++] send() , sendto() 차이점 (feat. network_socket) (0) | 2019.12.05 |
[C & C++] ZeroMemory() , memset() 차이점 (feat. 구조체 초기화) (0) | 2019.12.05 |
[C & C++] inet_addr(), inet_aton(), inet_ntoa() (0) | 2019.12.03 |