読者です 読者をやめる 読者になる 読者になる

移動式のブログ

ガジェット、アニメ、プログラミング、考えたことその他色々・・・特にこれといったテーマはないカオスなブログです。

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で送信側から送信されたデータを受信する。