Home
Tag
LocationLog
Guestbook
Admin
Write
공지사항
댓글 및 방명록 작성 제한
블로그 하루 최다 방문 HIT
이 블로그는 말이죠
막강 잔지식 집합소 ver.1
카테고리
Show All
(635)
ZeLkOvA
(346)
want
(35)
Life
(8)
My property
(94)
Silly Dream
(18)
Picture
(31)
Gossip
(133)
Travel
(22)
Study
(45)
Actionscript 3.0
(23)
iOS
(5)
Samsung SmartTV
(0)
Flash
(4)
Others
(11)
Wizard Works
(17)
ETC.
(226)
Videos
(62)
Picture
(35)
Miscellaneous
(113)
Game
(13)
iPhone App
(3)
Trash Box
(0)
Trash_01
(0)
Trash_02
(0)
Trash_03
(0)
Trash_04
(0)
Trash_05
(0)
Trash_06
(0)
Trash_07
(0)
Trash_08
(0)
Trash_09
(0)
Trash_10
(0)
링크
티스토리 가입하기!
RSS FEED
달력
«
»
2025.4
일
월
화
수
목
금
토
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
Total
Today
Yesterday
최근에 올라온 글
최근에 달린 댓글
글 보관함
네트워크 프로그래밍 TCP 서버 구현
Study/Others
/
2008. 10. 13. 15:51
// 필요한 헤더 인클루드 // stdio.h, stdlib.h, string.h, winsock2.h #include <stdio.h> #include <stdlib.h> #include <string.h> #include <winsock2.h> int main(int argc, char *argv) { // WSADATA 데이터타입의 변수 선언 WSADATA wsaData; // SOCKET 변수 선언 SOCKET tcpSock; // 클라이언트 SOCKET 변수 선언 SOCKET hClntSock; // 클라이언트의 연결정보 저장을 위한 sockaddr_in 변수 struct sockaddr_in clntAddr; // SOCKADDR_IN clntAddr; // 주소 구조체의 길이를 갖기 위한 정수형 변수 int clntAddrSize; // sockaddr_in 변수 선언 struct sockaddr_in addr; char* ip = "220.67.113.136"; char* port = "9192"; // WSAStartup() 윈속 라이브러리 초기화 // 오류처리 if(WSAStartup(MAKEWORD(2, 2), &wsaData) != 0) { printf("WSAStartup() Error!\n"); exit(1); } printf("윈속 라이브러리 초기화 성공!\n"); // IPv4, TCP 소켓 생성 tcpSock = socket(PF_INET, SOCK_STREAM, IPPROTO_TCP); printf("TCP 소켓 생성\n"); // sockaddr_in 값 할당 memset(&addr, 0, sizeof(addr)); addr.sin_family = AF_INET; addr.sin_port = htons(atoi(port)); //addr.sin_addr.s_addr = inet_addr(ip); addr.sin_addr.s_addr = htons(INADDR_ANY); // 소켓에 주소 바인딩 if(bind(tcpSock, (SOCKADDR*)&addr, sizeof(addr)) == SOCKET_ERROR) { printf("bind() Error!\n"); exit(1); } printf("바인드 완료\n"); // listen 함수 if(listen(tcpSock, 5) == SOCKET_ERROR) { printf("listen() Error!\n"); exit(1); } printf("연결 요청 대기상태\n"); // accept 함수 clntAddrSize = sizeof(clntAddr); hClntSock = accept(tcpSock, (SOCKADDR*)&clntAddr, &clntAddrSize); if(hClntSock == INVALID_SOCKET) { printf("accept() Error!\n"); exit(1); } printf("클라이언트와 연결 완료\n"); // 소켓 종료 closesocket(tcpSock); // WSACleanup() 윈속 라이브러리 해제 WSACleanup(); return 0; }
공유하기
URL 복사
카카오톡 공유
페이스북 공유
엑스 공유
게시글 관리
구독하기
막강 잔지식 집합소 ver.1
저작자표시
비영리
변경금지
Posted by
성주
, |
태그목록
iPhone
제주도 하이킹
지하철
핸드스튜디오
Handstudio
as3.0
서태지
갖고싶어
AS 3.0
위자드웍스
아이폰
환승
chrome
flex3
개꿈
사람몰려복잡해
M/V
속초
game
자전거 여행
Adobe
Google
빨리빨리
티스토리
트위터
자전거
후래시
구글
Flex
NHN
티스토리툴바
관리메뉴열기
개인정보
티스토리 홈
포럼
로그인
닫기
단축키
내 블로그
내 블로그 - 관리자 홈 전환
Q
Q
새 글 쓰기
W
W
블로그 게시글
글 수정 (권한 있는 경우)
E
E
댓글 영역으로 이동
C
C
모든 영역
이 페이지의 URL 복사
S
S
맨 위로 이동
T
T
티스토리 홈 이동
H
H
단축키 안내
Shift
+
/
⇧
+
/
* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.