본문 바로가기
개념/혼자 공부하는 C언어

chapter 9) 포인터에 const 사용

by kiseno 2024. 7. 22.
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