본문 바로가기

스터디/POCU COMP2200 C 언매니지드 프로그래밍8

POCU 아카데미 COMP 2200 C 언매니지드 프로그래밍 7주차 학습 개요POCU 아카데미 C언매니지드 학습 7주차 내용을 회고하고 복습하는 글이다 가변 인자 함수의 구조와 동작 원리, 그리고 C 언어에서의 오류 처리 방식 전반에 대한 내용을 학습하였다  무엇을 배웠는지가변 인자 함수 개념 및 원리가변 인자 함수란 정해지지 않은 수의 매개변수를 허용하는 함수이며, 인자가 몇개 들어오는지 모를 때 사용한다 다음과 같은 형태로 사용한다 (, …); va_로 시작하는 매크로 함수들을 이용한 구현va_list, va_start, va_end, va_arg를 이용하여 가변 함수를 구현한다매크로설명va_list가변 인자 목록을 담는 자료형va_start가변 인자 목록을 초기화하고, 가변 인자 시작 주소를 찾아 설정va_arg가변 인자 목록에서 다음 인자를 가져오고, 포인터를 다음 위.. 2025. 3. 3.
POCU 아카데미 COMP 2200 C 언매니지드 프로그래밍 6주차 학습 개요POCU 아카데미 C언매니지드 학습 6주차 내용을 회고하고 복습하는 글이다 이번 학습에서는 C 언어의 구조체, typedef, 함수 포인터, 배열 포인터 등의 개념에 대해 공부했다. 또한 공용체(union)를 통해 메모리 효율성을 높이는 방법과 바이트 정렬의 중요성에 대해서도 배웠다  무엇을 배웠는지구조체구조체란 여러 자료형을 가진 변수들을 하나의 패키지로 묶은 데이터의 집합이다 구조체의 장점비슷한 데이터를 모아 코드를 빠르게 이해할 수 있다매직 넘버를 방지하여 실수를 줄일 수 있다원자성을 보장하는 연산을 통해 실수를 방지할 수 있다구조체의 선언 및 사용구조체는 지역변수로 선언 시 초기화되지 않으므로 명시적으로 초기화해줘야 한다. 전역변수로 선언시 BSS 영역에 의해 초기화 되지만, 함수 내에서 지역.. 2025. 2. 25.
POCU 아카데미 COMP 2200 C 언매니지드 프로그래밍 5주차 학습 개요POCU 아카데미 C언매니지드 학습 4주차 내용을 회고하고 복습하는 글이다 입력과 파일 처리, 스트림과 버퍼링, 커맨드 라인 인자 처리 등에 대해 학습하였다. 또, C에서 입력을 처리하는 다양한 방법과, 파일을 다루는 기초적인 원리를 이해할 수 있었다.  무엇을 배웠는지입력 처리C에서 입력을 받는 방법에는 여러 가지가 있으며, 사용 목적과 안전성을 고려하여 적절한 함수를 선택해야 한다 한 글자씩, 한 줄씩, 한 데이터씩, 한 블록씩 입력을 받을 수 있으며 각 방식에는 장단점과 주의해야 할 사항이 있다 한 글자씩 입력 받기 getchar()getchar()를 사용하면 한 글자씩 입력을 받을 수 있다. 입력이 성공하면 해당 문자의 int 값을 반환하고, 입력을 종료하려면 EOF를 쓰면 된다. 종료될 경우.. 2025. 2. 25.
POCU 아카데미 COMP 2200 C 언매니지드 프로그래밍 4주차 학습 개요POCU 아카데미 C언매니지드 학습 4주차 내용을 회고하고 복습하는 글이다  무엇을 배웠는지C에서 문자열은 메모리에 어떻게 표현되는지, 어떻게 사용하는지 학습하였다 문자열의 표현과 길이기본 자료형(Primitive Type)의 경우 크기가 고정되어 있다. 하지만 문자열은 길이가 정해져 있지 않으며, 동적으로 변경될 수도 있다 또한 C에서 문자열을 다룰 때 가장 큰 특징은 문자열의 길이가 어디에도 저장되지 않는다는 점이다. 따라서 프로그래머가 직접 문자를 관리해야 한다#include #include /* 문자열 복사 함수 (size_t를 사용하여 길이 명시) */void copy_string(char* dest, const char* src, size_t max_length) { if (max_l.. 2025. 2. 22.
POCU 아카데미 COMP 2200 C 언매니지드 프로그래밍 3주차 학습 개요POCU 아카데미 C언매니지드 학습 3주차 내용을 회고하고 복습하는 글이다  무엇을 배웠는지C 언어에서는 메모리를 직접 관리하고, 데이터를 효율적으로 처리하기 위해 배열과 포인터를 필수적으로 사용한다.특히, 포인터는 배열, 함수 호출, 동적 메모리 할당, 자료구조 구현 등에 중요한 역할을 하며, 간접 참조 개념을 이해하는 것이 핵심이다 주소 연산자(Address-of Operator) &C 에서 & 연산자는 변수의 메모리 주소를 반환한다#include int main(void) { int num = 10; printf("num의 값: %d\n", num); printf("num의 주소: %p\n", &num); /* &num을 사용하여 주소 출력 */ return 0;}=====.. 2025. 2. 21.
POCU 아카데미 COMP 2200 C 언매니지드 프로그래밍 2주차 학습 개요POCU 아카데미 C언매니지드 학습 2주차 내용을 회고하고 복습하는 글이다  무엇을 배웠는지2주차에서는 C의 함수, 배열, 스택 메모리, C 빌드 과정에 대해 학습했다 특히, C 언어가 컴파일 과정에서 어떻게 동작하는지 이해하는 것이 중요해보였다. 컴파일러가 코드를 어떻게 해석하고 실행 파일을 만드는지, 그 과정은 어떻게 이루어지는지 깊이 이해할 수 있었다 함수함수의 선언 방식, 반환형, 전방 선언C에서 함수의 기본적인 특징C 언어에서 함수는 기본적으로 전역 함수이다. 또한, 오버로딩을 지원하지 않는다 또한, C는 항상 위에서 아래로 코드가 실행되기 때문에 함수가 선언되기 전 호출되면 문제가 발생할 여지가 잇다. 컴파일러가 처음 등장한 함수 호출을 기본적으로 int 반환형으로 가정하기 때문이다. 따라.. 2025. 2. 21.
반응형