본문 바로가기
Language/C

[C언어] 기본 문법 정리

by SooooooooS 2023. 3. 22.
728x90

C 프로그램의 기본 구조

1. 주석(Comment)

  • /* 와 */ 로 묶여진 부분
  • 프로그램이 하는 일을 설명하는 설명 글
  • 프로그램의 실행결과에 영향을 끼치지 않는다.
/* 한줄로 된 주석 */

/* 여러 줄로 된
   주석을 사용할 때는
   이와 같이 사용 */

// 이와 같은 주석은 "//"부터 이 줄 끝까지 주석이다.

2. 전처리기(preprocessor)

  • #include 로 시작하는 전처리기 지시어(※주의※  # 과 include 사이에 공백이 있으면 안된다)
  • #include <stdio.h> 의미 : 헤더 파일 stdio.h를 소스 코드에 포함시켜라
  • 헤더 파일(head file) : 코드의 일부부이 들어있는 텍스트 파일, .h 확장자를 가진다.

★ 참고 ★

stdio = standard input ouput 로 표준 입출력을 의미한다.

pinrtf(), scanf()와 같은 함수가 들어있다.


3. 함수(function)

  • 특정 기능을 수행하는 처리 단계들을 괄호로 묶어서 이름을 붙인 것
  • 문장(statement) : 프로그램을 이루는 가장 기본적인 단위 / 항상 세미콜론(;)으로 끝난다.
  • main() : C 프로그램에서 가장 먼저 실행되는 함수로 반드시 존재

함수의 기본 구조

  • 함수 헤더 = 함수 선언부
    • 함수의 출력 타입 : 함수가 반환하는 값의 형태 지정
    • 함수 이름 : 보통 프로그래머가 마음대로 지을 수 있지만 main은 특수한 함수라서 변경 할 수 없다.
    • 함수의 입력 타입 : 함수를 실행할 때 주어진 입력 값을 지정
    • void : 비어있다. 즉, 입력이 없거나 출력이 없을 수 있다.
  • 함수 몸체
    • {} 중괄호 사이에 들어간다. 
    • 함수가 수행해야할 문장들이 들어가고 이는 순차적으로 진행된다.

return 문장 ★

함수를 종료시키면서 값을 반환하는 키워드

선언부에서 작성한 출력 타입에 맞는 값을 반환하면 된다.

main() 함수는 대개 운영체제가 호출을 하는데 이때 0을 반환한다는 의미는

이 프로그램이 성공적으로 수행되었음을 의미한다.


4. 변수(variable)

  • 프로그램이 사용하는 데이터를 일시적으로 저장할 목적으로 사용하는 메모리 공간
  • 프로그램이 실행되는 동안에 저장된 값이 언제든지 변경될 수 있는 공간
  • 반드시 함수의 시작 부분에서 선언되어야 한다.
  • 변수 크기를 구하는 함수 = sizeof()

변수 구조

//변수 선언 후 따로 초기화
int num1;
num1 = 10;

//여러 개의 변수 한번에 선언 가능
int x, y, z;
int num2 = 10, num3 = 30;
  • 자료형(data type)
    • 정수형 : 정수를 나타내는 자료형(음수, 0, 양수) → 음수 사용을 원하지 않을 경우 자료형 앞에 unsigned 를 써준다.
      • short(2byte)
      • int(4byte)
      • long(4byte)
    • 부동 소수점형 : 소수점을 가지는 실수 값을 나타내는 자료형
      • float(4byte)
      • double(8byte)
      • long double(8byte)
    • 문자형 : 하나의 문자를 나타내는 자료형 → 아스키코드(ASCII)
      • char(1byte)
#include <stdio.h>

int main(void)
{
    printf("char형의 크기 : %lu\n", sizeof(char));
    printf("int형의 크기 : %lu\n", sizeof(int));
    printf("short형의 크기 : %lu\n", sizeof(short));
    printf("long형의 크기 : %lu\n", sizeof(long));
    printf("float형의 크기 : %lu\n", sizeof(float));
    printf("double형의 크기 : %lu\n", sizeof(double));
    printf("long double형의 크기 : %lu\n", sizeof(long double));
}

위의 코드 실행화면


5. 상수(constant)

  • 값이 정해지면 변경할 필요없는 데이터
  • 즉, 프로그램이 실행되는 동안에 값이 변경되지 않는다.
// 정수 상수
int num1 = 123u //unsinged int형 정수
long num2 = 123l //long형 정수
long num3 = 123ul //unsinged long형 정수

//기호 상수
#define num4  10000
const int num5 = 12345
  • 정수 상수 : 정수 뒤에 접미사를 붙여 표현
    • unsigned int : u 또는 U 를 접미사로 사용
    • long : l 또는 L 를 접미사로 사용
    • unsigned long : ul 또는 UL 를 접미사로 사용
  • 기호 상수(symbolic constant) : 기호에 의하여 상수 표현
    • #define 문 사용 : #define   기호상수   값
      • 이는 컴파일러가 통작하기 전에 전처리기가 처리
      • 전처리기 문장에는 세미콜론을 붙이지 않는다
      • 선언 위치는 함수 위 = 전처리기 선언부에 같이 선언한다.
    • const 키워드 사용 : const    자료형     변수이름=초기화;
      • 일반적인 변수 선언 앞에 const를 붙이면 상수가 된다.
      • 변수 선언이므로 세미콜론을 붙여야한다.
      • 선언 위치는 함수 안 = 일반적인 변수 선언 위치에 같이 선언한다.
728x90

'Language > C' 카테고리의 다른 글

[C언어] Pointer 개념정리  (2) 2023.03.14
[C언어] MAC에서 Visual Stdio Code로 C언어 실행하기  (0) 2023.03.13