Dizzy999
dizzy-theme
Dizzy999
전체 방문자
오늘
어제
  • 분류 전체보기 (34)
    • Machine Learning (1)
      • 논문 리뷰 (0)
      • 수학통계 이론 (1)
      • 짧은글 (0)
    • 알고리즘 (22)
      • 알고리즘 이론 (1)
      • 알고리즘 문제 (20)
      • 짧은글 (1)
    • 프로그램 (2)
      • 프로그래밍 용어 및 상식 (1)
      • C++ (1)
    • 미니프로젝트 (0)
      • Moon Tracker (0)
    • Theme (0)
      • 짧은글 (0)
    • 아두이노&라즈베리파이 (1)
      • 아두이노 (0)
      • 라즈베리파이 (1)
    • Miscellaneous (3)
      • 이과가 이해한 Color (3)
    • OpenCV (0)
      • Tutorial (0)
    • Manim (5)
      • Tutorial (5)

블로그 메뉴

  • 홈
  • 방명록
  • 태그

공지사항

인기 글

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
Dizzy999

dizzy-theme

프로그램/C++

포인터 기초

2021. 10. 14. 15:21

 

포인터를 공부하는데 어려웠던 점은 첫번째로 포인터의 개념과 두번째로 프로그램내에서 문법 사용(특히 포인터 연산자)이였다.

 

 

1. 포인터의 개념 이해

포인터의 개념은 간단하게 아래의 예시로 이해 할 수 있었다. 

  예시 자료형
문자 A char
숫자 119 / 3.14159 int / double
메모리의 주소 bfe30846 int* , double* , ... 

 

간단하게 C++에서 기본적으로 제공하는 변수의 타입중에 하나로 생각 할 수 있다 

문자와 숫자를 담는 메모리와 변수형이 다르듯이 

메모리의 주소만들 저장하기 위한 변수형이 따로 있다 (그걸 포인터라고 한다) 

 

2. 포인터 실사용 

포인터와 관련된 연산자는 2가지로 *,& 이다 

int n = 20 ;       // 왼쪽 같이 선언이 되면 변수에 대해 n의 주소와 n의 값이 선언이 된다.

n의 주소를 알려면 &n 를 하면 되고 

int* ptr = &n ; // *은 포인터 ptr를 선언할 때 사용한다.

 

&은 변수(함수)의 주소를 반환하는 연산자이고 

*은 포인터를 선언하는 연산자 이다 

하나 특기할것은 포인터를 선언할때 변수의 자료형을 같이 선언하게 되어있다.

 

n의 자료형에 따라

double* ptr = &n; 혹은 void* ptr = &n; 등등으로 선언한다

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

반응형
저작자표시 비영리 변경금지 (새창열림)
    Dizzy999
    Dizzy999

    티스토리툴바