COMP22005 [C언어]C언어에서 헤더파일이 필요한 이유?(헤더파일 필요성) 헤더파일 이란 C언어에서는 두 종류의 소스코드 파일이 있다. (.h 와 .c) 이 두 파일을 비교해 보면 다음과 같다. C파일 (.c) 헤더 파일 (.h) 실제 프로그램을 돌게하는 로직 코드를 저장하는 파일 내용(함수 정의(=함수 구현), 매크로, 변수, 전역변수등) 여러 소스코드 파일에 공통적으로 필요한 것들을 저장하는 파일 내용(함수 선언, 매크로, extern 변수 선언등) #include 로 헤더파일을 인클루드 함 여기서 C파일과 헤더 파일은 그냥 합쳐서 하나의 파일로 만들면 되지 않을까?라는 생각이 들 수 있다. 헤더파일의 필요성 없어도 되지만 있는 것이 더 편해서 프로그래머들은 한 파일 안에 모든 코드들을 넣기보다 체계적으로 나누어서 넣는 것을 좋아한다. 그렇기에 연관된 기능끼리 모아서 .c .. 2023. 2. 16. [C언어]인클루드 가드의 뜻과 사용법(헤더가 꼬일 때,업계표준) 헤더파일(.h) 파일은 주료 함수선언과 전역변수 extern선언할 때 주로 들어간다. (물론 #define 같은 매크로도 들어간다.) 그리고 #include는 저번 글처럼 복사 붙여 넣기(확장)해주는 매크로이다. 헤더파일에 #define 같은 매크로를 다른 헤더파일에서도 사용을 해야 할 일이 있을 때, 양쪽 헤더 파일에 인클루드를 할 때가 있다. 예시코드 파일 3개를 보자 #include "b.h" /* 코드 내용 생략 */ 파일1 a.h #include "a.h" /* 코드 내용 생략 */ 파일 2b.h #include "a.h" int main(void) { /* 코드 내용 생략 */ return 0; } 파일 3 c.c 여기서 c.c 파일을 컴파일하게 되면 어떻게 될까? #include "a.h"에.. 2023. 2. 15. [C언어]#include <> 와 #include " " 차이 C언어를 배우면 "Hello world"를 출력하는 것을 먼저 배운다. 이때, 출력을 하려면 출력헤더파일인 stdio.h를 인클루드 해야 한다. 이런 식으로 말이다. #include int main(void) { printf("hello world"); return 0; } 코드 1 #include 사용할 때 이때 #include 이런 방식을 쓴다. 그리고 어떨 때는 #include ""로 작성도 하는 코드를 볼 수 있다. #include "calculate.h" int main(void) { /* 코드 내용 생략 */ return 0; } 코드 2 #include "" 사용할 때 이때 두 개 코드의 차이점은 무엇일까? 사실 #include 와 #include ""는 둘 다 같은 용도로 쓰인다.(복붙 하.. 2023. 2. 15. POCU 2~3주차 리뷰 인간의 실수는 계속되고 같은 실수를 반복한다..... 글쓰기가 갑자기 느려진 이유는 내가 원래 수업을 들으면서 필기를 하면서 어떤 글을 작성할지 생각을 하는데, 3주 차에 실습 3이랑 과제 1을 하느라고 수업필기도 못하고 주야장천 수업 듣고 실습과 과제를 계속했었다. 참 미리미리하기로 나 자신이랑 약속해 놓고도 2주 차 때 미리 3주 차 강의도 들어보고 과제1도 했었어야 되는데 과제1보면서 머리로는 이렇게 저렇게 구현하면 쉽겠는걸? 3주차 때 한꺼번에 처리하자 생각하고 3주차돼서 보니 막상 구현하기가 쉽지 않았던 거 같다. 과제가 3주 동안 주어지니 과제 안에 있는 소문항 들도 많아서 은근 시간이 걸렸다. 2주 차 리뷰 : 일단 실습 2랑 수업에서 배운 건 스택메모리랑 배열에 대해서 배운 것 같다. (기.. 2023. 1. 27. 이전 1 2 다음