< 구조체에서 포인터가 사용되는 경우 > ① 구조체를 가리키는 포인터 ② 포인터를 멤버로 가지는 구조체 구조체를 가리키는 포인터 struct student s = { 24, "kim", 4.3 }; struct student *p; p = &s; // 구조체의 주소를 포인터에 대입 printf("학번 = %d 이름 = %s 학점 = %f \n", (*p).number,(*p).name, (*p).grade); // (*p)는 구조체 ※ *p.number이라고 하면 안 된다. .연산자의 우선순위가 *연산자 보다 더 높기 때문에, p.number가 먼저 계산되며 다음에 *(p.number)가 계산되기 때문이다. +) 간접 멤버 연산자 (indirect membership operator) 포인터를 이용하여 구조체의 멤버를 가리키는 것은 프로그램에서 자주 등장하기 때문에 이것을 위한 특수한 연산자이다. p->number; // (*p).number와 같다. -> 연산자가 간편하여 훨씬 ...
#
c언어
#
간접멤버연산자
#
구조체
#
포인터
원문 링크 : [ C언어: 구조체와 포인터 ]