인프런 커뮤니티 질문&답변

이재완님의 프로필 이미지
이재완

작성한 질문수

홍정모의 따라하며 배우는 C언어

2.8 키워드와 예약어

2.8 키워드와 예약어 질문

해결된 질문

작성

·

354

1

안녕하세요. 강의를 듣고 키워드와 예약어 개념이 조금 헷갈려서 질문 드립니다.

키워드는 문법을 구분하기 위해 사용되는 단어이고, 예약어는 말 그대로 프로그래밍 언어가 문법에 사용하려고 예약해둔 단어들로 알고 있습니다.

그렇다면 헤더가 없어도 문법적으로 사용되는 단어들은 키워드에 포함되고, 헤더가 없으면 변수 혹은 함수의 이름으로 쓸 수 있으나 include 하는 순간 이름으로 쓸 수 없는 단어들을 예약어로 보는 건가요? 아니면 전자, 후자 모두 키워드이자 예약어인지 궁금합니다.

감사합니다.

답변 1

2

안녕하세요, 답변 도우미 Soobak 입니다.

헤더 파일의 포함 유무와 관계없이 문법적으로 사용되는 단어들은 키워드에 포함됩니다.
키워드는 강의에서의 내용처럼 언어의 문법에서 사용되는 단어들이며, 컴파일러에 의해 사전 정의된 식별자로 사용됩니다.
예를 들어서, if , else , while , for , int , float 등은 언제나 키워드입니다.

반면에, 예약어는 키워드와 비슷하지만 표준 라이브러리나 컴파일러와 관련이 있으며, 사전 정의되지 않아 주로 특정 헤더를 포함시킨 후 사용됩니다.

C언어에서 키워드와 예약어가 정리된 페이지의 링크를 첨부드립니다.
http://wiki.dreamrunner.org/public_html/C-C++/C/C-Reserved-Identifiers.html (링크)

이재완님의 프로필 이미지
이재완

작성한 질문수

질문하기