C언어 구조체 정의인데... 오류가 뭔지 잘 모르겠습니다.
글쓴이: seojh1431 / 작성시간: 화, 2014/07/22 - 7:35오후
typedef struct
{
UINT4 state[4]; /* state (ABCD) */
UINT4 count[2]; /* number of bits, modulo 2^64 (lsb first) */
unsigned char buffer[64]; /* input buffer */
}MD5_CTX;
이 구조체가 재정의라고 오류가 뜨는데 두번 정의한적이 없거든요. 첨부파일 올릴게요. 오류좀 봐주세요..
File attachments:
첨부 | 파일 크기 |
---|---|
![]() | 8.75 KB |
Forums:
main.c에서 md5.h, md5.c를 모두
main.c에서 md5.h, md5.c를 모두 include해서 그렇습니다.
md5.c는 md5.h를 include하므로, main에서 md5.h를 두 번 include 한 거와 마찬가지가 됩니다.
소스파일(*.c)에서는 헤더파일(*.h)만 include해야 합니다.
md5.c를 컴파일한 오브젝트 파일을 링킹시키면 되구요.
이 문제와는 별개로 헤더파일도 다른 헤더파일을 include할 수 있으므로 여전히 중복 문제가 발생합니다.
보통은 C나 C++의 경우 헤더파일을 아래와 같이 전처리문으로 감싸 중복을 방지합니다.
Signature :) - "여유를 갖고 행동하되 게을러지지 말자"
감사합니다
오류를 찾았습니다^^
댓글 달기