소프트웨어 교육과 C 언어에 대해 설명합니다.
Visual Studio Community 2015 설치 방법을 설명합니다.
프로그래밍 언어의 첫 관문인 Hello, world! 출력을 설명합니다.
변수를 만들고 변수에 값을 저장하는 방법을 설명합니다.
Visual Studio 디버거의 중단점을 사용하는 방법, 코드를 한 줄씩 실행하는 방법, 변수의 값을 확인하는 방법을 설명합니다.
정수형 변수를 선언하는 방법과 정수 자료형의 오버플로우, 언더플로우, 자료형 크기 구하기, 최솟값과 최댓값에 대해 설명합니다.
실수형 변수를 선언하는 방법과 자료형 크기 구하기, 최솟값과 최댓값, 오버플로우, 언더플로우에 대해 설명합니다.
문자 한 개를 저장할 수 있는 char 자료형에 대해 설명합니다.
다양한 값을 표현하는 리터럴과 변하지 않는 값을 위한 상수에 대해 설명합니다.
증가, 감소 연산자에 설명하고, 연산자의 위치에 따른 차이점을 알아봅니다.
서로 다른 자료형끼리 연산을 했을 때 발생하는 자료형의 확장과 축소에 대해 설명합니다.
특정 조건일 때 코드를 실행하는 if 조건문에 대해 설명합니다.
두 방향으로 분기하는 else에 대해 설명합니다.
여러 가지 상황을 처리하는 else if에 대해 설명합니다.
if 조건문에서 사용할 수 있는 비교 연산자와 삼항 연산자를 설명합니다.
조건식이나 값을 논리적으로 판단하는 논리 연산자에 대해 설명합니다.
참과 거짓을 나타내는 논리 자료형에 대해 설명합니다.
값을 비트 단위로 연산하는 비트 연산자에 대해 설명합니다.
부호 있는 정수와 부호 없는 정수에 비트 연산을 했을 때의 차이점과 비트 연산자를 응용한 플래그 처리 방법을 설명합니다.
다양한 조건을 처리할 수 있는 switch 분기문에 대해 설명합니다.
Hello, world!를 100번 출력해보면서 for 반복문을 학습합니다.
Hello, world!를 100번 출력해보면서 while 반복문을 학습합니다.
do while 반복문을 사용하여 코드를 최소 한번은 실행하는 방법을 설명합니다.
break와 continue를 사용하여 반복문을 제어하는 방법을 설명합니다.
지금까지 배운 for, while 반복문과 if 조건문을 사용하여 계단식으로 별을 출력하는 방법을 설명합니다.
코드의 원하는 부분으로 건너뛰는 goto 제어문에 대해 설명합니다.
지금까지 배운 내용을 활용하여 FizzBuzz 문제를 풀어봅니다.
메모리의 특정 위치를 가리키는 포인터에 대해 설명합니다.
메모리 공간을 할당받아 사용하는 방법에 대해 설명합니다.
값을 여러 개 저장할 수 있는 배열에 대해 알아보고, 반복문으로 값을 출력하는 방법을 설명합니다.
평면 구조의 2차원 배열에 대해 알아보고, 반복문으로 값을 출력하는 방법을 설명합니다.
지금까지 크기가 고정된 배열을 사용했습니다. 이번에는 포인터에 메모리를 할당하여 배열처럼 사용해보겠습니다.
C 언어에서 문자열을 다루는 방법을 설명합니다.
입력값을 문자열에 저장하는 방법을 설명합니다.
문자열의 길이를 구하는 방법과 두 문자열이 같은지 비교하는 방법을 설명합니다.
문자열을 다른 곳으로 복사하는 방법과 두 문자열을 붙이는 방법을 설명합니다.
서식을 지정하여 문자열을 만드는 방법을 설명합니다.
문자열에서 문자와 문자열로 검색하는 방법을 설명합니다.
특정 문자를 기준으로 문자열을 자르는 방법을 설명합니다.
문자열을 숫자로, 숫자를 문자열로 변환하는 방법을 설명합니다.
문자열을 이용하여 회문을 판별하는 방법과 N-gram을 만드는 방법을 설명합니다.
관련 정보를 하나의 의미로 묶는 구조체에 대해 설명합니다.
구조체 포인터의 사용 방법과 구조체 포인터에 메모리를 할당하는 방법을 설명합니다.
구조체를 활용하여 2차원 평면에서 위치를 표현하고 두 점 사이의 거리를 구하는 방법을 설명합니다.
구조체가 메모리에 올라갔을 때 멤버를 정렬(alignment)하는 기능에 대해 설명합니다.
메모리 함수를 사용하여 구조체와 메모리에 값을 설정하는 방법, 구조체와 메모리의 내용을 복사하는 방법을 설명합니다.
구조체를 배열로 선언하는 방법과 구초체 포인터 배열을 선언하고 메모리를 할당하는 방법을 설명합니다.
모든 멤버가 공간을 공유하는 공용체를 설명합니다.
구조체와 공용체를 조합하는 방법을 설명합니다.
구조체의 멤버를 비트 단위로 저장하는 비트 필드에 대해 설명합니다.
정수형 상수에 이름을 붙여서 표현하는 열거형에 대해 알아보고, switch 분기문이나 for 반복문에서 활용하는 방법을 설명합니다.
변수를 다른 자료형을 변환하는 방법과 포인터, void 포인터, 구조체 포인터를 다른 자료형으로 변환하는 방법을 설명합니다.
메모리 주소를 옮겨다닐 수 있는 포인터 연산에 대해 설명합니다.
특정 용도의 코드를 한 곳에 모아놓은 함수에 대해 설명합니다.
함수 바깥에 결괏값을 알려주는 반환값에 대해 설명합니다.
함수 안에 값을 넘겨주는 매개변수에 대해 설명합니다.
함수에서 포인터를 매개변수로 활용하는 방법을 설명합니다.
함수에서 1차원 배열과 2차원 배열을 매개변수로 사용하는 방법을 설명합니다.
함수에서 구조체를 매개변수로 사용하는 방법을 설명합니다.
매개변수의 개수가 정해지지 않은 가변 인자 함수에 대해 설명합니다.
함수 안에서 자기자신을 호출하는 재귀호출에 대해 설명합니다.
함수를 저장하는 포인터인 함수 포인터에 대해 설명합니다.
함수 포인터 배열을 선언하는 방법, 함수 포인터를 구조체 멤버로 사용하는 방법, 함수 포인터를 함수의 매개변수와 반환값으로 사용하는 방법을 설명합니다.
파일에 값을 쓰는 방법과 읽는 방법을 설명합니다.
파일의 읽기/쓰기 위치를 활용하여 파일의 크기를 구하는 방법, 파일을 부분적으로 읽고 쓰는 방법을 설명합니다.
구조체를 활용하여 바이너리 파일을 처리하는 방법을 설명합니다.
거품 정렬(bubble sort)을 구현하는 방법과 퀵 정렬(quick sort) 함수 사용 방법을 설명합니다.
C 언어로 연결 리스트(linked list)를 구현하는 방법을 설명합니다.
C 언어에서 매크로를 정의하는 방법과 주의점에 대해 설명합니다.
매크로를 이용하여 조건부 컴파일을 하는 방법과 파일 포함 방법을 설명합니다.
함수의 기능별로 파일을 분리하고, 함수 선언과 구조체를 헤더 파일에 넣는 방법을 설명합니다.
모든 함수에서 접근할 수 있는 전역 변수에 대해 설명합니다.
함수를 벗어났을 때 값이 계속 유지되는 정적 변수와 현재 파일안에서만 사용할 수 있는 정적 함수에 대해 설명합니다.
실행 파일에 지정한 옵션을 어떻게 사용하는지 설명합니다.
비트맵 그림 파일의 픽셀 정보를 읽어서 아스키 아트로 출력하는 프로그램을 만들어봅니다.
파일 안에 파일을 보관하는 파일 아카이브를 만들어봅니다.
C 언어에서 JSON 형식을 읽고 쓰는 방법을 설명합니다.
GitHub의 소스 코드를 사용하여 JSON 형식을 읽고 쓰는 방법을 설명합니다.