C언어기초

나혼자C언어 - 매크로

bumpang0629 2022. 3. 28. 12:28

#define 전처리기 지시자를 사용하여 매크로 상수를 선언

매크로를 실제값으로 정의하겠다, 또는 치환하겠다는 의미

define :전처리기 지시자

VAL: 매크로명

10: 실제값

VAL이 10이라는 상수로 치환되었으므로 VAL은 매크로 상수이다.

 

장점: 의미파악이 쉽고,중복방지, 수정이 용이

 

매크로의 특징

매크로 선언시 유의 사항

이름 중간에 공백 불가.

이름 시작 시 숫자 불가

이름변수와 구분하기 위해 대문자 사용.

매크로실제값은 어떤 형태가 와도 무방

매크로는 문자열 상수 내에 있는 매크로의 이름은 치환하지 않는다.

 

매크로 상수를 이용한 배열 선언

매크로 상수를 배열 선언시 배열의 길이로 사용할 수 있다.

값이 30이 아닌 25가 나오는 이유는 매크로는 단순치환이기 때문에 

연산자의 우선순위에 의해서 A+10*2 로 25가 나온다.

그래서 괄호를 적어주면 결과값이 정상적으로 나올 것이다.

함수보다는 매크로가 더 빠르다.

매크로는 일반함수보다는 가독성이 떨어지지만 성능면에서 더 우수하다.(성능향상에 도움이 된다.)

매크로 함수는 자료형에 독립적이다.

 

파일 분할의 필요성

to be continue

'C언어기초' 카테고리의 다른 글

나혼자C언어 - 전처리  (0) 2022.03.28
나혼자C언어 - 구조체  (0) 2022.03.28
나혼자C언어-메모리의 구조  (0) 2022.03.23
나혼자C언어 - 포인터  (0) 2022.03.23
나혼자 C언어 - 지역변수와 전역변수  (0) 2022.03.18