은 가정하자 그래서헤더 파일에 어떤 파일을 포함시켜야합니까? 구조체? <stdbool.h>?
struct box {
int value;
}
처럼 "struct.h"에서 구조체를 정의하고 나는 다른 파일에 구조체는 "math.c"
#include "struct.h"
struct box *sum(struct box *a1, struct box *a2) {
struct box *a3 = malloc(sizeof (struct box));
a3->value = a1->value + a2->value;
return a3;
}
"math.h"할 필요성을 말하는 것을 사용 "struct.h"도 포함시켜야합니까?
#include "struct.h"
struct box *sum(struct box *a1, struct box *a2);
struct box가 bool로 바뀌면 stdbool.h를 헤더와 c 파일에 모두 포함해야합니까? 컴파일러가 이것을 원한 것처럼 보입니다.
.c 파일보다는 헤더에 언제 파일을 포함해야합니까? 내 예제와 함께 뭔가 이상한 지 궁금해.
감사합니다.
bool에 대한 선언을 어떻게 진행하나요? – overcyn
@overcyn : 할 수 없습니다 : 형식이 아닌 매크로입니다. 선언 매크로는 전달할 수 없습니다. –
C99에는 '_Bool'이라는 기본 제공 유형이 있습니다. 'stdbool.h'는'typedef'를'bool'으로,'#define'을'true'와'false'로 만듭니다. – asveikau