C 구조체 2

[ C ] 17. 연결리스트 구조체 ( Linked List )

[ 연결리스트 구조체 ] 프로그래밍에서 빼놓을 수 없는 자료구조인 연결 리스트(linked list)에 대해 구현해보겠다. 연결리스트는 데이터가 담긴 노드(메모리 공간)을 일렬로 연결해놓았다고 해서 연결리스트라고 부르며 특징은 다음과 같다. 리스트의 중간 지점에 노드를 손쉽게 추가하거나 삭제할 수 있다. 특정 노드를 찾으려면 노드를 모두 검색해야 한다. 크기가 고정되어 있지 않다. 다음은 다른 노드를 가리키는 포인터가 하나씩만 있는 단일 연결 리스트(singly linked list)이다. 지금부터는 구조체, 포인터, 함수, 메모리 할당을 사용하여 단일 연결리스트를 구현하는 방법을 알아보겠다. 참고로 연결리스트는 기본적인 자료구조 이지만 포인터를 사용하다 보니 많은 사람들이 어려워하는 부분이니 너무 걱정..

[ C ] 08. 구조체

[ 구조체 ] 구조체는 struct 키워드로 정의한다. struct 구조체이름{ 자료형 멤버이름; ... }; // 구조체는 정의만 해서 사용할 수가 없다. 구조체도 변수로 선언해서 사용한다. struct 구조체이름 변수이름; ex. #define _CRT_SECURE_NO_WARNINGS // strcpy 보안 경고로 인한 컴파일 에러 방지 #include #include // strcpy 함수가 선언된 헤더 파일 struct Person{ // 구조체 정의 char name[20]; // 구조체 멤버 1 int age; // 구조체 멤버 2 char address[100]; // 구조체 멤버 3 } int main(){ struct Person p1; // 구조체 변수 선언 // 점으로 구조체 멤버에..