언어/C
[C언어] 기본 예제 살펴보기
SOo •
2022. 12. 13. 19:57
먼저 C언어의 기본 예제를 보며 한줄한줄 해석해보도록 하겠다.
#include <stdio.h> /*선행처리기 명령 (preprocessor 지시자)*/
void printNumber(int); /* printNumber() 함수의 선언부, void 무지형 (값 x) */
int main() /* main함수는 전달인자가 없다, return 값이 int 형 값이다 */
{
int num; /* num의 변수 선언 */
num = 1; /* 생성된 변수 num에 숫자상수 1을 대입 */
printNumber(num);
num = 3;
printNumber(num);
return 0; /*생략 불가능*/
}
void printNumber(int n)
{
printf("정수값은 %d입니다. \n", n); /* 선행처러기에 코드가 있으니 정의부 안보임 */
return; /* 생략 가능 (함수 수행을 끝내고 리턴할때 값 없이 제어만 돌아감)*/
}
printf("정수값은 %d입니다. \n", n); // 선행처러기에 코드가 있으니 정의부 안보임
return; // 생략 가능 (함수 수행을 끝내고 리턴할때 값 없이 제어만 돌아감
}
주석 (comment)
- /* ~~ */ 로 기재
- 누가 작성했는지, 기능, 개발 연월일 등을 작성할 때 주로 사용
- 실행가능한 code를 일시적으로 실행되지 않게 막아둘 때 이용
#include <stdio.h>
- #include는 선행처리기 명령(preprocessor 지시자) 이다
✔ 이는 preprocessor(전처리기) 에 의해 처리되며 " stdio.h " 라는 헤더파일을 현재 위치에 포함시킨다
✔ 전처리기 명령어의 특징 : #으로 시작
✔ 전처리에 의해 처리가 끝나고 나면 stdio.h의 내용 (200 여 줄)이 코드에 붙게 된다.
Q. #stdio.h를 사용하는 이유 ?
A. 입출력 함수 , printf()를 사용하기 위해서다. printf() 함수의 선언부가 헤더파일 안에 들어가 있기 때문이다.
(1. 함수의 선언부 2. 함수 호출부 3. 함수 정의부 가 갖춰져야 함수를 사용할 수 있다.)
void printNumber(int);
- printNumber () 함수의 선언부이다.
- int: 전달인자 void: 무지형 (값이 없다) 라고 해석
- 즉, printNumber은 전달인자는 정수형 (int)이지만 return 값의 type이 void 이므로 return 값이 없다.
int num; /* num의 변수 선언 */
num = 1; /* 생성된 변수 num에 숫자상수 1을 대입 */
printNumber(num);
num = 3;
printNumber(num);
return 0; /*생략 불가능*/
- main 함수는 전체 함수에서 가장 중심이 되는 함수이다.
- main 함수는 전달인자가 없다
- main 함수 앞은 int 즉, return 값이 int 형 값이다.
- return 0; 은 정수형 값 (int) 를 리턴한다는 것을 의미
- main 함수의 리턴 값으로 실행이 성공적이었는지, 이상이 있는지 알 수 있다.
return 값 0: 정상종료 또는 0 이외의 값 : 비정상 종료
int num;
- 변수 선언
- num이라는 이름의 int(정수형) 변수를 생성 (RAM에 할당)
int num =1;
- 생성된 변수 num에 숫자상수 1을 대입한다
- int num = 1; 의 형태처럼 한 줄로 쓸 수 있다. ( 쓰레기 값을 만들지 않기 위해 더 자주 사용된다)
void main()
{
}
return ; // 비표준 코드
많이 사용하는 void main() 은 비표준 코드 이므로 int main()을 이용해준다.
void printNumber(int n)
{
printf("정수값은 %d입니다. \n", n); /* 선행처러기에 코드가 있으니 정의부 안보임 */
return; /* 생략 가능 (함수 수행을 끝내고 리턴할때 값 없이 제어만 돌아감)*/
}
printf("정수값은 %d입니다. \n", n); // 선행처러기에 코드가 있으니 정의부 안보임
return; // 생략 가능 (함수 수행을 끝내고 리턴할때 값 없이 제어만 돌아감
}
printf() 함수
- printf()는 표준 출력함수로서 괄호 안에 지정되어있는 출력형식대로 화면에 출력한다.
- %d : 형식 변환 문자, 출력 대상을 자신의 형식대로 변환 출력해줌
cf) %d : 10진수 %o: 8진수 %u : 부호없는 10진수