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.1
일
월
화
수
목
금
토
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
31
Total
Today
Yesterday
최근에 올라온 글
최근에 달린 댓글
글 보관함
네트워크 프로그래밍 TCP 서버 구현
Study/Others
/
2008. 10. 13. 15:51
// 필요한 헤더 인클루드 // stdio.h, stdlib.h, string.h, winsock2.h #include
#include
#include
#include
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; }
공유하기
게시글 관리
막강 잔지식 집합소 ver.1
저작자표시
비영리
변경금지
Posted by
성주
, |
태그목록
서태지
chrome
Flex
빨리빨리
Adobe
AS 3.0
자전거
사람몰려복잡해
M/V
NHN
iPhone
지하철
개꿈
제주도 하이킹
Google
구글
속초
티스토리
위자드웍스
game
환승
as3.0
Handstudio
자전거 여행
핸드스튜디오
갖고싶어
트위터
아이폰
flex3
후래시
티스토리툴바