Mafa Dev
#define 과 const 선언의 차이점 본문
저번엔 const라는 변수를 상수화 시키는 선언에 대해 알아보았는데요 오늘 알고리즘 문제를 풀어보다가 #define 사용자 전 처리기를
사용하다가 const 선언과 #define의 차이점을 찾아보게 되었습니다. #define이란 값을 상수를 정의하는 기능을 하는데요
#define 상수명 값 |
이렇게 사용 하면되는데 여기서 상수 이름을 매크로라고 하고 값을 대체 리스트라고 한다고 합니다.
그리고 #define은 끝에 세미콜론(;)을 붙이면 안된다는 점을 유의해야 합니다. 세미콜론을 붙이면 세미콜론까지 함께 값에 치환이 된
다고 합니다. 이렇게 만들어진 것을 매크로 상수라고 하고 뒤의 값은 공백까지 포함하여 존재 할수 있다고 합니다.
const선언과 마찬가지로 프로그래머가 소스코딩을 짤 때 변경되어서는 안되는 값을 변경 시키는 실수를 할때 사용 되게 되는데요 컴
파일러에서 상수의 값을 프로그램의 중간에서 바꿀려고 할 때에는 에러를 보냅니다.
그럼 여기서 const와 %define의 차이점이 무엇인지 궁금하실 텐데요 #define은 선언을 할때에 type형을 기록하지 않고 const는 type
형을 기록해 준다고 합니다. 그래서 const의 변수형을 지정할 수 있다는 점 때문에 #define 보다 더 안전하다고 합니다. 그래서 꼭
#define만이 할 수 있는 작업환경이 아니라면 const를 쓰시는 것을 추천한다고 합니다.
그리고 주로 #define을 사용할때 한줄 코딩을 자주 사용하시는데 제가 여러줄로 코딩하기 위해 알아 보았는데 밑에 보이는 사진 처럼
끝 문장에 \를 붙여주시면 됩니다.
'C언어 > 유용한 것' 카테고리의 다른 글
구조체 (0) | 2013.03.07 |
---|---|
다차원 배열 (0) | 2013.03.06 |
포인터 대상의 const 선언 (0) | 2013.01.23 |
서식문자의 종류와 그 의미 (0) | 2013.01.17 |
특수문자의 종류 (0) | 2013.01.17 |