728x90
반응형
SMALL
#include <stdio.h>
int main(void){
int a = 10, b = 20;
const int *pa = &a;
printf("parameter a value : %d\n", *pa);
pa = &b;
printf("parameter b value ; %d\n", *pa);
pa = &a;
a = 20; // 여기서 차이가 남
printf("parameter a : %d\n", *pa);
return 0;
}
main() 함수
1-1. 정수형 변수 a와 b를 선언하고 각각 10과 20으로 초기화
1-2. `const int *pa` 포인터를 선언하고 a의 주소를 할당, pa를 통한 값의 변경은 허용하지 않음을 의미
1-3. `*pa`를 사용하여 a의 값을 출력, 결과는 10
1-4. pa에 b의 주소를 할당하여 pa가 b를 가리키게 함
1-5. `*pa`를 사용하여 b의 값을 출력, 결과는 20
1-6. pa에 다시 a의 주소를 할당하여 pa가 a를 가리키게 함
1-7. a의 값을 직접 변경하여 20으로 할당, `const int *pa`는 pa를 통한 a의 값 변경을 막지만, a 자체의 값을 직접 변경하는 것은 가능
1-8. 변경된 a의 값을 `*pa`를 통해 출력, 결과는 20
반환문 (return) 작성 -> 프로그램이 성공적으로 실행되었음을 나타내기 위해 0을 반환
728x90
반응형
LIST
'개념 > 혼자 공부하는 C언어' 카테고리의 다른 글
chapter 9) 포인터를 사용한 두 정수의 합과 평균 계산 (1) | 2024.07.24 |
---|---|
chapter 9) 포인터를 사용한 두 변수의 값 교환 (1) | 2024.07.23 |
chapter 9) 포인터의 선언과 사용 (0) | 2024.07.21 |
chapter 9) 허용하지 않는 포인터 대입 (0) | 2024.07.20 |
chapter 8) sizeof 연산자를 사용한 배열 (0) | 2024.07.19 |