티스토리 뷰
2-1 "Hello, World!"들여다 보기
프로그래밍의 시작!
Hello World 를 완성했네요.
소스코드 - C로 작성된 컴파일되지 않은 코드
소스파일 - 소스코드가 저장되어 있는 파일
오브젝트 파일 - 소스파일을 컴파일하면 생성되는 파일
함수 - 적절한 입력과 그에 따른 출력이 존재하는 것
입력 x
3x + 4
출력 y
인자 전달 - 입력 x를 전달하는 행위
함수 호출 - 입력 x를 전달하면서 정의된 함수의 실행을 요구하는 행위
int main(void)
여기서 int는 '출력의 형태'를 말하고, ('출력의 형태'라는 말보다는 '반환형' 혹은 '리턴형(return type)'이라는 표현을 많이 사용합니다)
void는 '입력의 형태'를 말합니다.
main은 함수를 정의하고 있는 것이지요.
몸체(Body) - 기능에 대한 정의를 지니고 있는 부분
위 소스에서 '{'이 main 몸체 시작을 나타내고, '}'이 main 몸체의 종료를 나타냅니다.
연산을 수행하는 모든 문장들은 세미콜론(;)으로 끝납니다.
표준 라이브러리 함수의 사용을 위해서는 헤더 파일을 포함해야 합니다. (위의 소스에서는 'stdio.h'를 사용하고 있죠)
표준 라이브러리 함수 - 기본적으로 제공이 되는 함수
C언어는 큰 따옴표(" ")를 사용해서 문자열을 표현합니다.
소스코드에 보면 '\n'이라는 것이 있는데 이것은 줄을 바꾸라는 것을 의미합니다. 그리고 '\n'과 같은 것을 특수문자라고 합니다.
헤더 파일의 포함을 알리는 선언이 프로그램 작성 시 제일 먼저 등장해야 합니다.
return은 함수 종료와 값의 반환이라는 두 가지 의미를 지닙니다.
연습문제 2-1
문제 1
관건은 '\n' 의 사용이죠. 'printf'를 한번만 호출하라고 했으니까요.
문제 2
'printf'를 3번 호출하라고 한 그대로 소스를 짰습니다.
2-2 주석이 들어가야 완성된 프로그램
주석(comment) - 프로그램 코드 내에서 /* 로 시작해서 */로 끝나는 부분을 말합니다.
주석은 선택이 아니라 필수!라고 하네요. 소스가 길어지게 되면 자신도 잘 알아볼 수 없는 부분이 생길 수 있으니 살짝 살짝 표시를 해 놓는다는 의미라고 생각하면 되겠죠.
이런식으로 이용이 가능하겠네요.
2-3 printf 함수의 기본적 이해
printf 함수는 첫 번째로 전달된 문자열을 출력하는 기능을 지니고 있다.
그렇기 때문에 6번째 줄에서 printf 함수 호출 시, 전달 된 첫번째 문자열을 그대로 출력 해 주고 있다.
마찬가지로 7번째 줄에서도 첫번째 문자열을 출력하게 된다. 그런데 문자열의 형태가 이러하다. "%d\n"
문자열에서 첫 번째로 등장하는 것이 '%d'이다. 이러한 문자를 '서식 문자'라고 하는데 이는 출력 대상의 출력 형태를 지정하는 것이다.
'%d'는 10진수 정수형으로 출력을 하라는 의미이고, ' , '를 사용하여 인자를 구분한다.
연습문제 2-2
문제1
문제2
이번 장에서 공부한 내용 정리
1. C 언어의 기본 구성(헤더 파일, 함수, 주석)에 대해 살펴보았다.
2. printf 함수가 지니고 있는 기능과 서실 문자에 대해 살펴보았다.
벌써 2장도 끝이네요. 아직은 쉽습니다...ㅋㅋ
'Programming > C' 카테고리의 다른 글
[C언어] 열형강의 C 프로그래밍 [6장 - printf와 scanf 함수에 대한 고찰] (0) | 2020.06.09 |
---|---|
[C언어] 열형강의 C 프로그래밍 [5장 - 상수와 기본 자료형] (0) | 2020.06.09 |
[C언어] 열형강의 C 프로그래밍 [4장 - 데이터 표현 방식의 이해] (0) | 2020.06.09 |
[C언어] 열형강의 C 프로그래밍 [3장 - 변수와 연산자] (0) | 2020.06.09 |
[C언어] 열형강의 C 프로그래밍 [1장 - 이것이 C언어다] (0) | 2020.06.09 |
- Total
- Today
- Yesterday
- Java
- 개념
- 숫자체크
- docker
- 정규식
- 쿠버네티스
- file storage
- 열혈강의 프로그래밍
- 코딩
- OSI7layer
- 열혈강의
- anyframe
- 파일 스토리지
- 도커
- C언어
- RDB
- 자료구조
- Spring
- block storage
- 전자정부프레임워크
- 특징
- Framework
- Kubernetes
- 블록 스토리지
- 자바
- 오브젝트 스토리지
- 문자체크
- M2E
- object storage
- C
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | |
7 | 8 | 9 | 10 | 11 | 12 | 13 |
14 | 15 | 16 | 17 | 18 | 19 | 20 |
21 | 22 | 23 | 24 | 25 | 26 | 27 |
28 | 29 | 30 |