본문 바로가기

programming language/C 언어

열혈 c프로그래밍 13-1(3)

포인터 변수 ptr에 저장된 값을 감소시키는 형태의 연산을 기반으로 모든 배열 요소에 접근하여, 배열에 저장된 모든 정수를 더하여 그 결과를 출력하는 프로그램을 작성해보는 문제이다.

#include<stdio.h>

int main(void)
{
	int arr[5] = { 1, 2, 3, 4, 5 };
	int* ptr = &arr[4];
	int sum = 0;
	int i = 0;
	for (i = 0; i < 5; i++)
	{
		sum += *(ptr--);
	}
	printf("%d", sum);
	return 0;
}

ptr--는 후위 감소 이기때문에 sum += *(ptr--);에서 += 연산의 진행 후에 후위 감소가 이루어진다.