소스를 대충 정리해서 올려봤습니다. 윈도우 DevC++ 입니다.
그냥. 책 보시는것이 나을거 같습니다. 현재의 소스는 소켓 종료 상태를 확인하지 않고 있습니다.
테스트 방법 server.bat 실행
client KIM.bat 접속 client PARK.bat 접속
c 다중채팅 프로그램http://book.naver.com/search/search.nhn?sm=sta_hty.book&sug=&where=nexearch&query=c+%EB%8B%A4%EC%A4%91%EC%B1%84%ED%8C%85+%ED%94%84%EB%A1%9C%EA%B7%B8%EB%9E%A8
http://search.naver.com/search.naver?where=nexearch&query=c+%EB%8B%A4%EC%A4%91%EC%B1%84%ED%8C%85+%ED%94%84%EB%A1%9C%EA%B7%B8%EB%9E%A8&sm=top_hty&fbm=1&ie=utf8
http://www.google.co.kr/search?hl=ko&source=hp&biw=&bih=&q=c+%EB%8B%A4%EC%A4%91%EC%B1%84%ED%8C%85+%ED%94%84%EB%A1%9C%EA%B7%B8%EB%9E%A8&gbv=2&oq=c+%EB%8B%A4%EC%A4%91%EC%B1%84%ED%8C%85+%ED%94%84%EB%A1%9C%EA%B7%B8%EB%9E%A8&gs_l=heirloom-hp.12...678.678.0.1144.1.1.0.0.0.0.149.149.0j1.1.0....0...1ac.1.34.heirloom-hp..1.0.0.x4fSeOLZChc
chathttp://www.codeproject.com/search.aspx?q=chat&x=-985&y=-146&sbo=kw
무료 강의http://olc.kr/main/index.jsp
---------------------------------------------------------------------------- 젊음'은 모든것을 가능하게 만든다.
매일 1억명이 사용하는 프로그램을 함께 만들어보고 싶습니다. 정규 근로 시간을 지키는. 야근 없는 회사와 거래합니다.
각 분야별. 좋은 책'이나 사이트' 블로그' 링크 소개 받습니다. shintx@naver.com
반드시 기억하실 내용이 있습니다. 1) send() 하면 보내고자 하는 내용이 다 보내질 것이라고 생각조차 하지마라. 2) recv() 하면 자신이 읽고자 하는 내용이 한번에 읽히게 될 것이라고 생각조차 하지마라.
* 항상, 리턴값을 검사하고, 에러/예외 검사(연결단절, 시그널 등) 후, 재시도에 대해 생각해야 합니다. 특히, 윈도우라면, Non-blocking에 대한 이해와 대응 방법이 필수적인 이유가 될 수 있음을 명심해야 합니다.
텍스트 포맷에 대한 자세한 정보
<code>
<blockcode>
<apache>
<applescript>
<autoconf>
<awk>
<bash>
<c>
<cpp>
<css>
<diff>
<drupal5>
<drupal6>
<gdb>
<html>
<html5>
<java>
<javascript>
<ldif>
<lua>
<make>
<mysql>
<perl>
<perl6>
<php>
<pgsql>
<proftpd>
<python>
<reg>
<spec>
<ruby>
<foo>
[foo]
참고해보세요.
소스를 대충 정리해서 올려봤습니다. 윈도우 DevC++ 입니다.
그냥. 책 보시는것이 나을거 같습니다.
현재의 소스는 소켓 종료 상태를 확인하지 않고 있습니다.
테스트 방법
server.bat 실행
client KIM.bat 접속
client PARK.bat 접속
c 다중채팅 프로그램
http://book.naver.com/search/search.nhn?sm=sta_hty.book&sug=&where=nexearch&query=c+%EB%8B%A4%EC%A4%91%EC%B1%84%ED%8C%85+%ED%94%84%EB%A1%9C%EA%B7%B8%EB%9E%A8
http://search.naver.com/search.naver?where=nexearch&query=c+%EB%8B%A4%EC%A4%91%EC%B1%84%ED%8C%85+%ED%94%84%EB%A1%9C%EA%B7%B8%EB%9E%A8&sm=top_hty&fbm=1&ie=utf8
http://www.google.co.kr/search?hl=ko&source=hp&biw=&bih=&q=c+%EB%8B%A4%EC%A4%91%EC%B1%84%ED%8C%85+%ED%94%84%EB%A1%9C%EA%B7%B8%EB%9E%A8&gbv=2&oq=c+%EB%8B%A4%EC%A4%91%EC%B1%84%ED%8C%85+%ED%94%84%EB%A1%9C%EA%B7%B8%EB%9E%A8&gs_l=heirloom-hp.12...678.678.0.1144.1.1.0.0.0.0.149.149.0j1.1.0....0...1ac.1.34.heirloom-hp..1.0.0.x4fSeOLZChc
chat
http://www.codeproject.com/search.aspx?q=chat&x=-985&y=-146&sbo=kw
무료 강의
http://olc.kr/main/index.jsp
----------------------------------------------------------------------------
젊음'은 모든것을 가능하게 만든다.
매일 1억명이 사용하는 프로그램을 함께 만들어보고 싶습니다.
정규 근로 시간을 지키는. 야근 없는 회사와 거래합니다.
각 분야별. 좋은 책'이나 사이트' 블로그' 링크 소개 받습니다. shintx@naver.com
반드시 기억하실 내용이 있습니다. 1) send()
반드시 기억하실 내용이 있습니다.
1) send() 하면 보내고자 하는 내용이 다 보내질 것이라고 생각조차 하지마라.
2) recv() 하면 자신이 읽고자 하는 내용이 한번에 읽히게 될 것이라고 생각조차 하지마라.
* 항상, 리턴값을 검사하고, 에러/예외 검사(연결단절, 시그널 등) 후, 재시도에 대해 생각해야 합니다.
특히, 윈도우라면, Non-blocking에 대한 이해와 대응 방법이 필수적인 이유가 될 수 있음을 명심해야 합니다.
댓글 달기