struct 2

[자료구조 - C언어] Linked List

Array대신 Linked List를 사용하는 이유는 무엇일까? 예를 들어, char arr[6] = "linked"; 이런 배열이 있다고 하자. 0~5까지의 배열 칸에 알파벳이 하나씩 들어가 있을 것이다. 여기서 'n'을 삭제하려면 'n' 삭제하고 뒤에 있는 나머지 배열 칸의 값들을 전부 복사하여 한 칸씩 앞에 넣어 줘야 한다. 이렇게 배열 인덱스를 바꿔 주는 것은 번거롭고 복잡하기 때문에 "링크드 리스트(Linked List)"를 사용하여 추가, 삭제 등 각 노드의 수정을 용이하게 한다. 연습하기 1 헤드 노드 하나만 생성하여 값을 넣고 다음 노드에는 NULL로 설정하기 #include typedef struct node { char value; struct node *next_node; }NODE;..

[C언어] 구조체(1)

구조체 구조체는 반복되는 변수들을 편하게 관리하기 위해서 사용합니다. 변수들의 공통 요소를 찾아 구조체로 묶어 사용하며, 이렇게 만들어진 구조체는 재사용의 목적이 되기도 합니다. 방법① struct 구조체명 { //구조체 데이터타입 변수명1; 데이터타입 변수명2; }; void main() { //메인함수 struct 구조체명 구조체변수; 구조체변수.변수명1 = 값1; 구조체변수.변수명2 = 값2; } Ex) 방법① : x, y 좌표 출력하기 struct structEx{ //구조체 int x; //데이터타입 변수명1; int y; //데이터타입 변수면2; }; void main() { //메인 함수 struct structEx sE; sE.x = 10; // "구조체변수.멤버변수" 형식으로 초기화 sE..

C언어 2021.08.07