2012-01-28 5 views
-1

구현은 링크 된 목록을 통해 수행됩니다. 이 같은 것이 합법적일까요? 내가 temp 생각포인터를 통한 액세스

int val=temp.next->value; 
temp.next->value = temp->value; 
temp->value = val; 
+1

답변은 무엇보다도 사용중인 언어에 따라 다릅니다. – phoog

+1

문맥이 없으면 대답하기가 어렵습니다. 그러나 temp를 포인터와 구조체로 사용하고 있으며 둘 다 될 수는 없습니다. 좀 더 자세하게 말하십시오. – FatalError

+0

죄송합니다. 저는 C++이고 노드 구조가있는 연결된 목록 클래스를 사용하고 있습니다. –

답변

2

포인터, 그래서 temp->nexttemp.next를 해결.

temp->next이 NULL (다음 노드에 대한 유효한 포인터)이 아닌 경우 예, 유효합니다.

+0

만약'temp'가 포인터라면 포인터 연산자를 사용할 수 없습니다 'temp.next'와 같습니다. 도트 연산자는 구조체/클래스의 객체/ref_to_objects와 함께 사용합니다. –

+0

'temp'가 포인터가 될 수 없다는 것을 말하고 있습니다. –

+0

@ Mr.Anubis : 나는 그것을 얻지 못합니까? 정말? ... "그것은 * 합법적 일 것입니다."(참고 : 나는 temp가 포인터라고 생각합니다) –