안녕하세요. C 프로그래밍 언어 여섯번째 강의입니다.
오늘은 Chapter 4에서 잠깐 다루었던 printf 함수를 조금더 깊이 살펴보겠습니다.
오늘도 내용을 100% 이해하실 필요는 없습니다.
어떠한 단어가 사용되지는, 실제 결과값은 무엇인지만 생각해보는 시간이 되세요.
지난 시간에 이어, Hello.c 소스파일을 열어서 위와 같이 코드를 작성해봅시다.
'ctr+F5' 이용해 실행시킨다면 위와 같은 결과화면이 보입니다.
분명 printf 함수에 %d를 입력하였으나, 전혀 다른 출력물이 보이네요.
왜 그럴까요?
서식 지정자란 컴퓨터에게 데이터를 어떠한 형식으로 출력할 것인가 알려주는 역할을 합니다.
엄연히 정확한 정의는 아니지만, printf 함수에서 이해를 돕기 위한 정의입니다.
자세한 정의는 추후에 다시 하도록 하겠습니다.
일단 여러가지 서식 지정자가 있으며, 각각 다른 출력 형태를 의미하는 것을 알아둡시다.
그 중 %d란 부호가 있는 정수 데이터를 출력할 때 쓰이는 서식 지정자입니다.
전달인자란 함수를 호출할 때 전달되는 실제 값들입니다.
함수의 정의를 기억하시나요. 입력값과 출력값이 존재하였습니다.
여기서 입력값은 항상 하나일 필요는 없습니다.
함수가 어떤 식으로 정의가 되었느냐에 따라 입력값은 두 개 이상일 수 있습니다.
실제로 입력되어 함수로 전달되는 값들을 우리는 전달인자라 부릅니다.
이제 위에서 우리가 만들었던 소스 코드를 다시 살펴보겠습니다.
가장 첫 번째 printf 함수입니다.
""를 이용하여 printf 함수에게 하나의 전달인자를 전달하였습니다.
printf 함수는 자신이 받은 첫 번째 전달인자를 해석하고 결과화면에 출력합니다.
이것은 헤더함수 'stdio.h'에서 정의된 printf 함수의 약속입니다.
두 번째 printf 함수입니다.
""를 이용하여 printf 함수에게 첫 번째 전달인자를 전달하였습니다.
printf 함수는 자신이 받은 첫 번째 전달인자를 해석합니다.
이 때 printf 함수는 첫 번재 전달인자에 %d라는 서식 지정자가 있다는 것을 알게 됩니다.
그렇다면 printf 함수는 자신에게 정해진 약속에 따라, 두 번째 전달인자를 찾습니다.
두 번째 전달인자는 첫 번째 전달인자 뒤 쉼표(,) 다음에 나타나기로 약속되어 있습니다.
따라서 printf 함수는 서식 지정자를 해석하고 두 번째 전달인자를 해당 자리에 넣어 결과화면에 출력합니다.
세 번째 printf 함수입니다.
""를 이용하여 printf 함수에게 첫 번째 전달인자를 전달하였습니다.
printf 함수는 자신이 받은 첫 번째 전달인자를 해석합니다.
이 때 printf 함수는 첫 번재 전달인자에 %d라는 두 개의 서식 지정자가 있다는 것을 알게 됩니다.
그렇다면 printf 함수는 자신에게 정해진 약속에 따라, 두 번째 전달인자를 찾습니다.
두 번째 전달인자는 첫 번째 전달인자 뒤 쉼표(,) 다음에 나타나기로 약속되어 있습니다.
따라서 printf 함수는 첫 번째 서식 지정자를 해석하고 두 번째 전달인자를 해당 자리에 넣어 결과화면에 출력합니다.
마찬가지로 printf 함수는 두 번째 서식 지정자를 해석하고 세 번째 전달인자를 해당 자리에 넣어 결과화면에 출력합니다.
printf 함수에 대한 이해가 어느정도 되었나요?
갑작스레 서식 지정자와 전달인자에 대해 새롭게 나와 당황하셨나요.
괜찮습니다.
모두 100% 이해하실 필요가 없습니다.
다른 단어들과 함께 천천히 공부해 나가신다면 점점 그 의미를 또렷하게 아시게 될겁니다.
읽어보만 보시지말고 직접 손수 코드를 작성해보시고 결과물을 확인해보세요!
'Computer Science > C' 카테고리의 다른 글
Chapter 7. 변수의 선언 (0) | 2018.04.12 |
---|---|
Chapter 6_1. 과제 (0) | 2018.04.05 |
Chapter 5. 주석 달기 (0) | 2018.04.05 |
Chapter 4_1. 과제 (0) | 2018.04.05 |
Chapter 4. Hello, C world ! 살펴보기 (0) | 2018.04.03 |