const

sz L·2023년 3월 22일
0

C++

목록 보기
5/40
post-thumbnail

const

상수화 시켜줄 땐 선언과 동시에 초기화 필수!

#include <stdio.h>  // C소스의 헤더파일

int main()
{
	int num1 = 100;
	int num2 = 200;
	int num3 = 300;
	const int * parr1 = &num1;
	// 포인터 변수의 주소 값은 바뀔 수 있지만 포인터 변수가 따라가는 arr1에 담긴 데이터가 바뀌지 않음
	int * const parr2 = &num2;
	// 포인터 변수의 주소 값이 고정되어 있고, 포인터 변수가 따라가는 arr2에 담긴 데이터는 바뀔 수 있음

	parr1 = &num3;
	*parr2 = 400;
	printf("%d\n", * parr1);
	printf("%d\n", * parr2);

	return 0;
}


업로드중..

  • const int num = 10;
    • 변수 10을 상수화
  • const int * ptr1 = &val1;
    • val1의 데이터 값을 상수화
    • 주소값은 바꿀 수 있음
    • 포인터 ptr1을 이용해서 val1의 값을 변경 못 함
  • int * const ptr2 = &val2;
    • ptr2의 상수화...주소값 변경 불가능
    • 데이터는 바꿀 수 있음
    • 포인터 ptr2가 상수화 됨
  • const int * const ptr3 = &val3;
    • 포인터 ptr3가 상수화 됨
    • ptr3를 이용해서 val3의 값을 변경 할 수 없음
profile
가랑비는 맞는다 하지만 폭풍은 내 것이야

0개의 댓글