C/C 연습

C 포인터 배열 접근 1

HicKee 2022. 10. 4. 16:02

길이가 5인 배열 arr 선언  1,2,3,4,5 초기화 포인터 변수를 통해 모든 배열요소 2씩 증가

int main() {

	int arr[5] = { 1, 2, 3, 4, 5 };

	int* ptr = arr;

	for (int i = 0; i < sizeof(arr) / sizeof(int); i++) {
		printf("%d ", *(arr + i));
	}
	printf("\n");
	for (int i = 0; i < sizeof(arr) / sizeof(int); i++) {
		*(ptr++)+=2;
	}

	for (int i = 0; i < sizeof(arr) / sizeof(int); i++) {
		printf("%d ", *(arr + i));
	}

}
#include <stdio.h>

int main() {
	int arr[5] = { 1, 2, 3, 4, 5 };

	int* ptr = arr;

	for (int i = 0; i < sizeof(arr) / sizeof(int); i++) {
		printf("%d ", *(arr + i));
	}
	printf("\n");
	for (int i = 0; i < sizeof(arr)/sizeof(int); i++) {
		*(arr + i) += 2;
	}

	for (int i = 0; i < sizeof(arr) / sizeof(int); i++) {
		printf("%d ", *(arr + i));
	}

}
1 2 3 4 5
3 4 5 6 7

배열의 마지막 요소를 가리키는 포인터 변수를 통해 배열에 모든 정수를 더하여 결과를 출력

#include <stdio.h>

int main() {

	int arr[5] = { 1, 2, 3, 4, 5 };

	int* ptr = &arr[(sizeof(arr) / sizeof(int))-1];
	int sum = 0;

	printf("%d\n", *ptr);

	for (int i = (sizeof(arr) / sizeof(int))-1; 0<=i; i--) {
		sum += *(ptr-i);
		//printf("%d\n", *(ptr-i));
	}

	printf("sum : %d", sum);

}

 

 

'C > C 연습' 카테고리의 다른 글

C 비트 연산자 사용  (0) 2022.10.11
C 포인터 예제  (0) 2022.10.05
C 포인터 연습  (0) 2022.10.04
C 음료수 선택 _ 일단은 자판기  (0) 2022.09.29
C 3500원 모두 소진 하는 가지 수  (0) 2022.09.28