C언어/참고서: C언어 콘서트

C언어 2차시 preprocessor, header file, comment(주석), printf, scanf, build, 디버깅

Olivia-BlackCherry 2023. 3. 20. 19:37

본격적으로 코드를 작성해보자.

-최종코드-

#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>

int main(void)
{
	printf("Hellow World\n");
	printf("Hi!\n");

	int x;
	int y;
	int sum;

	x = 100;
	y = 200;
	sum = x + y;

	int i;
	scanf("%d", &i);
	printf("%d", i);

	return 0;
}

목차

    1. C언어 소스 코드를 입력할 때 주의할 점

    1) 대문자와 소문자를 구별한다. 

    2) 철자를 주의한다.

    4)각 명령어 문장은 세미콜론 ; 으로 끝난다.

    5) 공백, 들여 쓰기는 상관없다.

    #include <stdio.h>
    
    int main(void)
    {
    	printf("Hellow World");
    	return 0;
    }

     

     

    2. 전처리기 preprocessor 

    #include <stdio.h>

    전처리기는 본격적으로 컴파일하기 전에 사전 작업을 하는 컴파일러의 일부분이다. 

    #으로 시작하는 문장으로 마지막에 ; 을 붙이지 않는다. 

     

     

    3. 헤더 파일 header file

    #include는 소스 코드 안에 특정 파일을 포함시키라고 지시하는 명령어다.

    <studio.h>은 헤더파일이며 입출력 함수에 대한 정보를 가진다.

    헤더 파일 header file은 일반적으로 .h 확장자를 가지며,  컴파일러가 필요로 하는 정보를 가지고 있다. 

     

     

    4. 줄바꿈, 들여쓰기

    프로그램을 보기 쉽게 하기 위해 의도적으로 빈 줄이나 들여쓰기를 한다. 

     

     

    5. 함수 

    함수는 특정 작업을 수행하는 코드 집합이다. 

    시작과 끝은 { }로 나타낸다.

    다음은 메인함수를 정의하는 문장이다.

    메인함수는 특별하다. 모든 C프로그램은 main()에서 시작하며, 단 하나(여러개X)의 main() 함수가 있어야 한다. 

    int main(void)
    {
    	printf("Hellow World");
    	return 0;
    }

     

     

    6. 주석 comment

    주석은 프로그램에 대한 부가적인 설명이다. 

    컴파일러에게 무시되기 때문에 프로그램의 동작에는 영향이 없다. 

    주석은 컴퓨터를 위한 것이 아니라, 읽는 사람을 위한 것이다. 

    좋은 주석이란?

    코드를 작성한 의도를 명확히 나타내는 것이다. 그대로 설명하는 것이 아니라, 더 높은 차원에서 설명한다.

    /* */ 사이에 쓴다. 

    #include <stdio.h>
    
    /* 주석을 설명합니다. */
    int main(void)
    {
    	printf("Hellow World");
    	return 0;
    }

     

    한 줄 전체를 주석처리하려면 //을 사용한다. 

    #include <stdio.h>
    
    // 한 줄 전체를 주석처리해요
    int main(void)
    {
    	printf("Hellow World");
    	return 0;
    }

     

     

    7. 줄 바꿈 

    줄 바꿈은 \n으로 표시한다. 

    역슬래시임을 주의한다. 

    #include <stdio.h>
    
    // 한 줄 전체를 주석처리해요
    int main(void)
    {
    	printf("Hellow World\n");
    	printf("Hi!\n");
    	return 0;
    }

     

     

    8. 변수 

    변수 variable 란 프로그램이 사용하는 데이터를 일시적으로 저장할 목적으로 사용하는 메모리 공간이다. 

    변수를 사용하려면, 변수를 먼저 선언해야 하는데 컴파일러에게 어떤 종류의 변수를 사용할 지 미리 말해두는 것이다. 

    #include <stdio.h>
    
    int main(void)
    {
    	int x;
    	int y;
    	int sum;
    
    	x = 100;
    	y = 200;
    	sum = x + y;
    
    	return 0;
    }

     

    1) 변수 선언

    자료형 다음에 변수이름을 넣어 int x; 식으로 변수를 선언한다. 

    자료형 + 변수이름 

    자료형 data type이란 변수가 저장할 데이터의 종류를 말한다. 

    -정수형 : short, int, long, long long

    -부동소수점형 : float, double, long double

    -문자형 : char

    2) 대입

    변수이름에 x= 100처럼 데이터를 저장한다. 

    문장의 마지막에는 ;을 붙인다.

    여기서 =는 양변이 같다는 의미가 아니라, 오른쪽 값을 왼쪽에 저장하라는 의미이다.

    3) 산술 

    연산 연산자 C수식
    덧셈 + x + y
    뺄셈 - x - y
    곱셈 * x * y
    나눗셈 / x / y
    나머지 % x % y

     

     

    9. 변수값 출력 printf() 함수

    #include <stdio.h>
    
    int main(void)
    {
    	printf("Hellow World\n");
    	printf("Hi!\n");
    
    	int x;
    	int y;
    	int sum;
    
    	x = 100;
    	y = 200;
    	sum = x + y;
    
    	return 0;
    }

    printf()는 출력하는 함수이다. 

    print 다음에 나오는 f는 format의 의미로 형식을 뜻한다. 

    printf(형식지정자, 변수);
    형식 지정자 ~형태로 출력 예시
    %d 정수(decimal) 100
    %f, %lf 실수(float) 3.12
    %c 문자(character) d
    %s 문자열(string) dog

     

     

    10. 입력갑 받는 scanf() 함수

    #define _CRT_SECURE_NO_WARNINGS
    #include <stdio.h>
    
    int main(void)
    {
    	int i;
    	scanf("%d", &i);
    
    	return 0;
    }

    scanf() 함수는 키보드로부터 입력된 데이터를 지정된 형식으로 변환하여 변수에 저장하는 라이브러리이다. 

    scanf(형식지정자, &변수);

    printf()함수와 유사하나 차이가 있다. 변수 앞에 &를 붙이는 것이다. 

    &는 앰퍼샌드 기호이다. 

    변수는 메모리에 저장되고, 각각의 변수는 주소를 가지고 있는데

    &를 붙이면 변수의 주소를 의미한다. 

    scanf는 사용자 입력값을 받은 다음, 이것을 해당 주소에 저장하는 것이다. 

    ex) &x  >>> x의 주소

     

    단, 주의할 점이 있다. 

    윈도우 환경에서 비주얼 스튜디오를 사용한다면 코드 첫 부분에 항상 아래의 문구를 넣는다.

    scanf에 관한 주의사항이 계속 나오는데, 이를 무시한다는 것이다.  

    #define _CRT_SECURE_NO_WARNINGS

     

     

    11. 빌드 build

    소스 코드를 다 입력하였으면 빌드한다. 

    컴파일과 링크를 하여 실행 파일을 생성하는 것을 빌드 build라고 한다.

    빌드 단축키는 Ctril + Shift + B

    실행 단축키는 Ctril + F5

     

     

    12. 디버그

    오류를 찾아내는 것을 디버깅이라고 한다.