Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
Tags
- Stack
- 백준
- 알고리즘
- 선그래프
- aws jupyter notebook
- MySQL
- NumPy
- 자료구조
- python
- Algorithm
- type hint
- javascript
- 가상환경
- Join
- 알고리즘 스터디
- 알고리즘스터디
- queue
- pandas
- 데이터시각화
- String Method
- 파이썬
- Selenium
- 노마드코딩
- 프로그래머스
- Matplotlib
- 정보처리기사 c언어
- 코딩테스트
- dataframe
- programmers
- openCV
Archives
- Today
- Total
조금씩 꾸준히 완성을 향해
[C 언어] 포인터(pointer) 본문
포인터
- 메모리의 위치를 표현한 기호
포인터 변수 선언
int *a; //포인터 변수 a 선언
*a = 10; //a의 값에 10을 대입
a의 주소 값에 100이 할당되었다고 가정하면 아래와 같이 표현할 수 있다.
printf("%d\n", a); //100
printf("%d\n",*a); //10
이 경우, a와 *a의 값을 출력하면 각각 100, 10이 출력 된다.
변수의 주소 찾기
int b=10;
int *a; //포인터 변수 a 선언
a=&b; //b의 주소값을 a에 대입
변수 b의 주소값에 101이 할당되었다고 가정하면 아래와 같이 표현할 수 있다.
printf("%d\n", *a); //10
printf("%d\n", a); //101
printf("%d\n", b); //10
이 경우, *a, a, b의 값을 출력하면 각각 10, 101, 10이 출력 된다.
<예제>
#include <stdio.h>
int main() {
int A = 10, B;
int *C = &B; //포인터 변수 C에 B의 주소값을 대입
B = A--; //B에 A 값을 대입한 후, A에 -1
B += 20;
printf("%d", *C); //C의 값을 출력
}
//출력: 30
※ 유튜브 흥달쌤 깨알 C언어 특강을 직접 정리한 내용입니다
'기타 언어 > C 언어' 카테고리의 다른 글
[C 언어] 배열과 포인터 (0) | 2023.03.18 |
---|---|
[C 언어] scanf와 변수 (0) | 2023.03.18 |
[C 언어] 배열 (1) | 2023.03.17 |
[C 언어] 다중 반복문, continue, break (0) | 2023.03.17 |
[C 언어] 반복문 (for문, while문, do while문) (0) | 2023.03.17 |