遍匈 / socket園殻 /

指蕗人薩極議糞孖

<貧匯准 和匯准>
侭僚“指蕗”?頁峺人薩極?捲暦匂窟僕匯訳方象?捲暦匂壅繍方象圻劔卦指公人薩極?祥崧蕗咄匯劔?囑欺嬾悪麗氏瓜“郡起指栖”。

斤?人薩極匆辛參聞喘 write() / send() 痕方?捲暦匂窟僕方象?捲暦匂匆辛參聞喘 read() / recv() 痕方俊辺方象。

深打欺寄何蛍兜僥宀聞喘 Windows 荷恬狼由?云准繍糞孖 Windows 和議指蕗殻會?Linux 和不恬俐個軸辛?音壅公竃旗鷹。

捲暦匂極 server.cpp?
#include <stdio.h>
#include <winsock2.h>
#pragma comment (lib, "ws2_32.lib") //紗墮 ws2_32.dll
#define BUF_SIZE 100
int main(){
 WSADATA wsaData;
 WSAStartup( MAKEWORD(2, 2), &wsaData);
 //幹秀耗俊忖
 SOCKET servSock = socket(AF_INET, SOCK_STREAM, 0);
 //鰯協耗俊忖
 sockaddr_in sockAddr;
 memset(&sockAddr, 0, sizeof(sockAddr)); //耽倖忖准脅喘0野割
 sockAddr.sin_family = PF_INET; //聞喘IPv4仇峽
 sockAddr.sin_addr.s_addr = inet_addr("127.0.0.1"); //醤悶議IP仇峽
 sockAddr.sin_port = htons(1234); //極笥
 bind(servSock, (SOCKADDR*)&sockAddr, sizeof(SOCKADDR));
 //序秘酌油彜蓑
 listen(servSock, 20);
 //俊辺人薩極萩箔
 SOCKADDR clntAddr;
 int nSize = sizeof(SOCKADDR);
 SOCKET clntSock = accept(servSock, (SOCKADDR*)&clntAddr, &nSize);
 char buffer[BUF_SIZE]; //産喝曝
 int strLen = recv(clntSock, buffer, BUF_SIZE, 0); //俊辺人薩極窟栖議方象
 send(clntSock, buffer, strLen, 0); //繍方象圻劔卦指
 //購液耗俊忖
 closesocket(clntSock);
 closesocket(servSock);
 //嶮峭 DLL 議聞喘
 WSACleanup();
 return 0;
}

人薩極 client.cpp?
#include <stdio.h>
#include <stdlib.h>
#include <WinSock2.h>
#pragma comment(lib, "ws2_32.lib") //紗墮 ws2_32.dll
#define BUF_SIZE 100
int main(){
 //兜兵晒DLL
 WSADATA wsaData;
 WSAStartup(MAKEWORD(2, 2), &wsaData);
 //幹秀耗俊忖
 SOCKET sock = socket(PF_INET, SOCK_STREAM, IPPROTO_TCP);
 //?捲暦匂窟軟萩箔
 sockaddr_in sockAddr;
 memset(&sockAddr, 0, sizeof(sockAddr)); //耽倖忖准脅喘0野割
 sockAddr.sin_family = PF_INET;
 sockAddr.sin_addr.s_addr = inet_addr("127.0.0.1");
 sockAddr.sin_port = htons(1234);
 connect(sock, (SOCKADDR*)&sockAddr, sizeof(SOCKADDR));
 //資函喘薩補秘議忖憲堪旺窟僕公捲暦匂
 char bufSend[BUF_SIZE] = {0};
 printf("Input a string: ");
 scanf("%s", bufSend);
 send(sock, bufSend, strlen(bufSend), 0);
 //俊辺捲暦匂勧指議方象
 char bufRecv[BUF_SIZE] = {0};
 recv(sock, bufRecv, BUF_SIZE, 0);
 //補竃俊辺欺議方象
 printf("Message form server: %s\n", bufRecv);
 //購液耗俊忖
 closesocket(sock);
 //嶮峭聞喘 DLL
 WSACleanup();
 system("pause");
 return 0;
}
枠塰佩捲暦匂極?壅塰佩人薩極?峇佩潤惚葎?
Input a string: c-language java cpp?L
Message form server: c-language

scanf() 響函欺腎鯉扮範葎匯倖忖憲堪補秘潤崩?侭參峪嬬響函欺“c-language”?泌惚音錬李委腎鯉恬葎忖憲堪議潤崩憲?辛參聞喘 gets() 痕方。

宥狛云殻會辛參窟孖?人薩極匆辛參?捲暦匂極窟僕方象?宸劔捲暦匂極祥辛參功象音揖議萩箔恬竃音揖議峒哘?http 捲暦匂祥頁灸侏議箭徨?萩箔議利峽音揖?卦指議匈中匆音揖。
<貧匯准 和匯准>

AltStyle によって変換されたページ (->オリジナル) /