티스토리 뷰

[원글 - 2010년 이글루스]


windows.h 에서 winsock.h인가를 미리 include 하고 있어서

#include <windows.h>
#include <winsock2.h>

라고 했더니 redefine 에러가 주루루루룩

뭐가 문제지 하고

우연치 않게 include순서를 바꾸었더니 그냥 됨;;;

#include <winsock2.h>
#include <windows.h>

혹시 안되시는 분들 해보시길 -ㅂ-;;

===========================================================================

2010년 11월 업데이트!!

#include <windows.h> 바로 전에 #define _WINSOCKAPI_ 을 넣어서

이전 버전의 winsock은 안쓰겠다고 알려주면 됨!!

#include <winsock2.h>와 #include <windows.h>가 같은 헤더에 있으면

그 헤더에 넣어주면 되고

각각 다른 헤더에서 include되어있고, 나중에 한 파일에서 include한다면

(가령, a.h에서 windows.h를 include하고, b.h에서 winsock2.h를 include하고, c.h에서 a.h와 b.h를 include 한다면...)

windows.h를 include하기 전에 define 하면 됨 (이게 가장 정확함)

#define _WINSOCKAPI_
#include <windows.h>
#include <winsock2.h>


댓글
최근에 올라온 글
Total
Today
Yesterday
최근에 달린 댓글
«   2024/05   »
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