c言語 winsock通信プログラム 2
c言語 winsock通信プログラム 受信側
通信するプログラムの受信側のソースコード。
#include<stdio.h> #include<winsock2.h> int main(void){ while(1){ WSADATA wsaData; WSAStartup(MAKEWORD(1,0),&wsaData); struct sockaddr_in client, server; char buf[2]; int a,b,c; a=socket(AF_INET, SOCK_STREAM,0); memset((char*)&server,0,sizeof(server)); server.sin_family=AF_INET; server.sin_addr.s_addr=htonl(INADDR_ANY); server.sin_port=htons(ポート番号をここに入力する); bind(a,(struct sockaddr*)&server),sizeof(server); listen(a,1); c=sizeof(client); b=accept(a,(struct sockaddr*)&client,&c); recv(b,buf,2,0); printf("%s",buf); closesocket(a); closesocket(b); WSACleanup();} return 0; }
bind(a,(struct sockaddr*)&server),sizeof(server); listen(a,1); c=sizeof(client); b=accept(a,(struct sockaddr*)&client,&c); recv(b,buf,2,0);
bind関数でソケットを開き、listenで受信の準備をする。
acceptで受信待機状態にする。
recvで送信側から送信されたデータを受信する。