-
카테고리
-
세부 분야
프로그래밍 언어
-
해결 여부
미해결
pnode = pnode->next; 와 pnode->next = pnode;는 같은 것으로 생각해도 될까요?
22.04.27 15:45 작성 조회수 186
0
예를 들어서 pnode->title과 입력받은 title의 값이 맞는지 비교하는 코드에서
while (pnode != NULL) { if (strcmp(pnode->title, title) == 0) break; //pnode->next = pnode;// pnode의 next node에다가 pnode를 대입 pnode = pnode->next;//pnode에다가 pnode의 next 노드의 주소를 대입 count++; }
이렇게 되어 있을때 pnode = pnode->next; 와 pnode->next = pnode;는 같은 기능을 하는 것으로 생각해도 될까요? 그런 것 같긴 한데 알쏭달송해서 질문해봅니다
답변을 작성해보세요.
1
강민철
2022.04.27
음.. 의미상 다릅니다.
pnode = pnode->next; 는 pnode->next 를 현재 pnode로 삼겠다는 뜻이고
pnode->next = pnode; 는 현재 pnode를 pnode->next에 저장하겠다는 뜻입니다.
1
홍정모
지식공유자2022.04.27
열심히 하고 계시네요.
자료구조 부터는 설명 듣는게 오히려 해가 될 수 있고 스스로 디버거로 주소를 아주 열심히 찍어보면서 머리속에 각인이 되는게 좋습니다.
일단 개념만 설명 드리자면
- pnode = pnode->next: pnode가 next로 이동
- pnode->next = pnode: pnode의 다음을 자기 자신으로? 6:00의 pnode->next = new_movie 얘기신가요?
호우호
질문자2022.04.27
헉 감사합니다! 계속 꾸준하게 해보겠습니다!
void delete_an_item(p_movie* p_head)에서
pnode->next = pnode; 이렇게 잘못 봤던 것 같습니다!
다시 확인해보니까 pnode = pnode ->next; 이네요 ㅎㅎ..;;
지금 다시보니까 이해됐어요.
pnode->next = pnode 이거는 자기의 다음이 자기를 가리키는? 코드네요.
답변 2