본문 바로가기

GameStudy489

Chapter 05. 가변 길이 배열(Variadic Array) 0. 가변 길이 배열 특징 - 사용할 메모리의 크기를 추가/축소가 가능함. 다만, 데이터를 이동(복붙)해야 하기에 오버헤드 발생. - 그래서 추가로 필요한 양보다 1.5배 정도 더 많이 할당받음. 그럼 나중에 더 필요하더라도 데이터 이동 횟수가 줄어듦. - 그래도 배열이기에, 중간 삽입 및 중간 삭제가 비효율적임. 중간에 삽입하면 밀어버리거나, 삭제하면 당겨와야하기 때문에. 1. 기본 코드 #define _CRT_SECURE_NO_WARNINGS #include #include #include enum { FALSE = 0, TRUE = 1, INVALIDE_INDEX = -1, INITIAL_CAPACITY = 8, INCREMENT = 2 }; typedef struct variadic_array {.. 2021. 11. 10.
Chapter 04. 배열(Array) 0. 배열의 특징 - 배열은 사용할 메모리 크기를 고정해서 선언해야 함. 선언 후에는 절대 변경 불가능함. 즉, 추가/축소가 불가능함. - 선언된 메모리는 연속적으로 할당됨. 1. 기본 코드 - 앞으로 연재될 모든 자료구조는 Clang C89 기준의 코드들로 이루어짐. 따라서, C가 가능하다면 모든 곳에서 될듯. - C 스타일의 배열을 그대로 사용하기엔 메모리 스탬프가 걱정됨. - 분할 컴파일을 통해서 배열을 아에 다른 파일에다가 정적으로 선언하고, 메모리 스탬프를 막을 정적 변수를 하나 더 선언 하고자 했음. - 그마저도 한 문제에 여러 개의 배열이 필요할 수 있어서, 그냥 정적 배열이 아닌 구조체를 사용함. 뭔가 아주 살짝의 문법 어필도 가능할듯? #define _CRT_SECURE_NO_WARNIN.. 2021. 11. 1.
Chapter 04. 삼각형 띄우기 보호되어 있는 글 입니다. 2021. 10. 29.
Chapter 03. 장치 초기화 보호되어 있는 글 입니다. 2021. 10. 29.