tcp_client 클래스의 coutconn 기능은 매우 유연합니다. 호스트 이름 또는 IP 주소를 사용하여 연결할 수 있습니다. IP 주소가 주어지면 즉시 사용하며 그렇지 않은 경우 gethostbyname 함수를 사용하여 IP 주소로 확인하려고 시도합니다. 공개: tcp_client(); bool conn (문자열, int); bool send_data(문자열 데이터); 문자열 수신(int); }; [cpp] /** C++ 클라이언트 예제 소켓을 사용하여 */ #include //cout #include //printf #include //strlen #include //string #include /#include inet.h> /inet_h> /inet_addr #include Qt를 가진 소켓 프로그래밍을 위해, http://www.bogotobogo.com/cplusplus/sockets_server_client_QT.php 방문하십시오. 컴퓨터 네트워크에서 TCP/IP 프로토콜을 사용하는 서버와 클라이언트 간의 통신은 연결 지향적이라는 것을 알고 있습니다(버퍼와 대역폭이 클라이언트용으로 예약됨). 서버는 다른 클라이언트에서 너무 많은 조회를 얻을 것 이다, 그리고 서버 는 모든 요청을 회신 하는 각 클라이언트를 고유 하 게 식별 해야. 이를 위해 우리는 “클라이언트 (32 비트) + 포트 번호 (16 비트)의 IP 주소”를 사용합니다. 이를 소켓(48비트)이라고 합니다. 모든 네트워크 통신은 소켓을 통과해야 합니다.

이 문서에서는 “클라이언트” 기능에 대 한 래퍼 클래스를 코딩 하려고 합니다. 소켓 클라이언트는 특정 포트 번호의 특정 서버에 연결한 다음 일부 데이터를 전송한 다음 응답을 기다립니다. 그리고 응용 프로그램이 원하는만큼이 작업을 계속합니다. 이러한 클라이언트의 일반적인 예는 웹 브라우저 및 ftp 클라이언트입니다. 웹 브라우저는 포트 80의 웹 사이트에 연결하고 웹 페이지의 html 콘텐츠를 가져온 다음 사용자를 위해 화면에 렌더링합니다. 6. listen() 또한 붙이다 함수 2 인수 20 클라이언트의 최대 20 수는 해당 서버에 연결할 수 있습니다 말한다. 따라서 서버에서 최대 20개의 큐 프로세스를 처리할 수 있습니다. 9. 클라이언트에 의해 서버가 적중하면 accept()에 의해 반환된 설명자()를 통해 클라이언트 소켓의 날짜와 시간을 인쇄합니다. 일반적으로 한 서버는 수많은 클라이언트를 지원하며, 클라이언트 수가 증가함에 따라 증가된 처리 부하를 처리하기 위해 여러 서버를 풀에서 함께 네트워크로 연결할 수 있습니다.

/** TCP 클라이언트 클래스 */ 클래스 tcp_client { 개인: int 양말; std:::문자열 주소; int 포트; 구조체 sockaddr_in 서버; 이제 tcp_client라는 간단한 클래스를 코딩하여 특정 포트 번호의 tcp 서버에서 데이터를 보내고 받는 것과 같은 기본 클라이언트 측 소켓 작업을 수행하는 데 사용할 수 있습니다.