C언어 네트워트 통신 프로그램 만들기
본 자료는 2페이지 의 미리보기를 제공합니다. 이미지를 클릭하여 주세요.
닫기
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
해당 자료는 2페이지 까지만 미리보기를 제공합니다.
2페이지 이후부터 다운로드 후 확인할 수 있습니다.

소개글

C언어 네트워트 통신 프로그램 만들기에 대한 보고서 자료입니다.

본문내용

주소 구조체의 내용을 memset 함수로 모두 0으로 초기화한 후에
// 각 필드에 필요한 값들을 설정한다.
// 따라서, 값이 설정되지 않은 필드는 0으로 초기화된다.
memset(&ServerAddr, 0, sizeof(ServerAddr));
ServerAddr.sin_family = AF_INET;/* 인터넷 주소 체계 설정 */
ServerAddr.sin_port = htons(port);/* 포트 번호 설정 */
prthost = gethostbyname(host);/* 호스트 이름에서 IP 주소 설정 */
memcpy(&ServerAddr.sin_addr, prthost->h_addr, prthost->h_length);
// 클라이언트의 소켓 생성
client = socket(AF_INET, SOCK_STREAM, 0);
if (client < 0)
{
printf("클라이언트 소켓 생성 실패\n");
exit(1);
}
//서버와의 연결 접속한번 연결하면 Quit을 이력하기 전까지는 연결을
//유지하기 때문에 while문에 들어가지 않고 나와있다.
if (connect (client, (struct sockaddr *)&ServerAddr, sizeof(ServerAddr)) < 0)
{
printf("서버와 연결 실패\n");
exit(1);
}
else
//서버에 접속되면 접속되었다 표시
printf("서버와 접속되었습니다.\n");
while(1)
{
//서버에 전달할 메시지를 입력합니다.
printf("메시지를 입력하세요\n");
gets(buf);
if(strcmp(buf,"Quit")==0){
//입력한 메시지와 Quit이 같다면
//메시지를 주고 받은뒤 while문을 나간다.
send(client, buf, strlen(buf),0);
//메시지 전송
recvbyte = recv(client, buf, sizeof(buf), 0);
//서버로부터 메시지를 받는다. 리턴값은 메시지크기
if(recvbyte < 0)
{
printf(" 메시지 수신 실패\n");
exit(1);
}
buf[recvbyte] = '\0';
//맨 끝에 널값을 넣어준다.(끝을 알아보도록
printf("수신한 메시지:%s\n", buf);/* 서버로부터 수신한 메시지 출력 */
exit(-1);}
//평상시 에는 메시지를 주고받으면 된다.
// 서버에 연결되었으면, 서버에게 데이터 전송
send(client, buf, strlen(buf),0);
//서버로부터 메시지 수신
recvbyte = recv(client, buf, sizeof(buf), 0);
if(recvbyte < 0)
{
printf(" 메시지 수신 실패\n");
exit(1);
}
buf[recvbyte] = '\0';
printf("수신한 메시지:%s\n", buf);/* 서버로부터 수신한 메시지 출력 */
}
//Quit으로 인해 While문을 나오면 소켓을 닫으며 종료한다.
closesocket(client);
WSACleanup();
return 0;
}

키워드

  • 가격1,000
  • 페이지수7페이지
  • 등록일2010.06.18
  • 저작시기2010.5
  • 파일형식한글(hwp)
  • 자료번호#620290
본 자료는 최근 2주간 다운받은 회원이 없습니다.
청소해
다운로드 장바구니