달력

2

« 2020/2 »

  •  
  •  
  •  
  •  
  •  
  •  
  • 1

   

멤버변수로 1차원 포인터 사용하기

.연산자*연산자보다 우선순위가 높습니다.

   

   

   

학습목표

  • 직접접근과 간접접근 확인하기
  • .연산자가 *연산자보다 우선순위 확인하기

   

   

   

메모리 구조

   

소스코드

   

#include <stdio.h>

struct point{
                        int* x;         // 1
차원 포인터 멤버변수
                        int* y;         // 1
차원 포인터 멤버변수
};

int main(void){
                int num1=10;
                int num2=20;
                struct point sp1;       //
구조체 변수 p1

                sp1.x=&num1;
                sp1.y=&num2;

                printf("%d %d \n", num1, num2);         //
직접접근
                printf("%d %d \n", *sp1.x, *sp1.y);     //
간접접
                // .
연산자가 *연산자보다 우선순위가 높습니다.
                // *sp1.x = *(sp1.x)
                // sp1.x = &num1
                // *sp1.x = *&num1 = 10

                return 0;
}


   

   

출력결과

 

Posted by codedragon codedragon

댓글을 달아 주세요