반응형
728x170
https://www.hackerrank.com/challenges/pointer-in-c/problem?h_r=next-challenge&h_v=zen
Pointers in C | HackerRank
Learn how to declare pointers and use them.
www.hackerrank.com
배경지식
포인터라는 것을 배우는데 포인터는 메모리 주소를 가리킨다.
주로 함수가 갖고있지 않은 변수들을 수정할 떄 사용한다고 한다.
그래서 예를 들어서 변수의 주소에 접근하려고 한다면
변수 이름이 val이면 &val을 해야 변수의 주소에 접근할 수 있다. &를 잘 기억하자
그렇다면 포인터는 어떻게 쓰냐면?
int val 이라는 정수형 val이라는 변수가 있다. 그렇다면 이 변수의 주소는 &val 이 될 것이다.
포인터는 이렇게 만든다
int*p = &val;
정수형 변수를 가리키는 포인터 p는 val의 주소를 가리킨다.
물론 포인터 p는 val의 value를 반환한다.
밑에 코드를 보면서 얘기하자면
int c = *a; 가 뜻하는 바는
*a가 가리키는 정수형 자료(value)가 c에 들어가는 것이다.
그다음 줄 보면
정수형 자료 c,d가 *a의 value를 바꾼 것이다.
a,b로 바로 접근할 수 없는 이유가 주소를 모르기 때문이다. ㅎㅎ
728x90
반응형
그리드형
'문제풀이(Problem Solving)' 카테고리의 다른 글
C언어 예제 8 "Sum of Digits of a Five Digit Number" [HackerRank] (0) | 2020.03.17 |
---|---|
C언어 예제 7 "For Loop in C" [HackerRank] (0) | 2020.03.16 |
C언어 예제 4 "Functions in C" [HackerRank] (0) | 2020.03.16 |
C언어 예제 3 "Sum and Difference of Two Numbers" [HackerRank] (0) | 2020.03.15 |
C언어 예제 2 "Playing With Characters" [HackerRank] (0) | 2020.03.15 |