C(3)
-
[C/C++] 가변 배열 - 구조체/분할 구현
아래 링크 클릭 시 해당 본문으로 이동가변 배열 - C구조체분할 구현가변 배열 - C++구조체분할 구현가변 배열 - C구조체와 동적 할당을 이용하여 가변 배열 자료형 만들기Arr.h#pragma once// 가변 배열 자료형 tArr (int)typedef struct _tagArr{ int* pInt; int iCount; int iMaxCount;} tArr;// 배열 초기화 함수 // 반환 타입이 필요없기 때문에 void // 주소를 넘겨줘야 되기 때문에 인자 타입은 배열의 주소인 tArr*void InitArr(tArr* _pArr);// 데이터 추가 함수 // 인자 타입은 배열의 주소 tArr* // int 데이터를 추가해야 되므로 int형 인자 _iData 추가void P..
2024.03.28 -
[C/C++] 연결 리스트 구현
연결 리스트 (Linked List)• STL(Standard Template Library, 표준 템플릿 라이브러리)의 컨테이너 중 하나로, 각 노드들이 포인터로 연결되어 있는 데이터 구조이다.• 노드(Node, 마디) : 데이터 하나를 저장하는 단위 • 노드에는 저장하고자 하는 데이터와 다음 노드를 가리키는 주소가 존재한다.• 데이터를 하나 추가할 때마다 힙 영역에 데이터 하나를 저장할 만큼 메모리 공간을 만든다.노드는 프로그램이 진행되는 동안 존재해야 되기 때문에 힙 영역에 만들어야 한다.즉, 동적할당을 사용해야 한다.• 시작 데이터만 알면 계속해서 다음 데이터를 찾아갈 수 있다.시간 복잡도(Big-O)• 최악의 경우 배열의 길이만큼 걸릴 때를 대비하여 시간 복잡도를 확인할 때 빅오 표기법을 사용한..
2024.03.17 -
[C++] 구조체(Structure)[C++ vs. C], 구조체 포인터
아래 링크 클릭 시 해당 본문으로 이동구조체컴파일 옵션을 C로 바꾸는 법구조체 포인터구조체(Structure) - C++ vs. C1. C++ 문법• 사용자 정의 자료형(UDDT : User Defined Data Type)이라고도 한다.• 내 맘대로 자료형을 만드는 것 (나만의 자료형)• 기본 문법이 아니기 때문에 내가 짠 코드에서만 적용된다.언어에서 기본으로 제공해 주는 자료형 외에 내 방식대로 새로운 자료형을 만들고 싶을 때 사용한다.// typedef : 타입 재정의typedef struct 구조체명{ 구조체 멤버; // 멤버 : 구성 요소} 구조체변수명; // 세미콜론 꼭 쓰기! 구조체도 모듈화가 가능하다.더 큰 자료형 안에 내가 만든 구조체가 그것의 부분으로 들어가서 점점 확장해 나갈..
2024.03.08