Menu



Manage

Study_C > 5-6.c Lines 23 | 1.1 KB
다운로드

                        #define _CRT_SECURE_NO_WARNINGS // C4996 에러 제거를 위한 코드 (scanf 에러방지)
#include <stdio.h>              // 입-출력을 하기 위한 함수 stdio.h를 불러오기 (표준 입출력)
#include <stdlib.h>             // rand() 입력을 위한 라이브러리 불러오기
#include <time.h>               // time() 입력을 위한 time.h 불러오기

int main()
{
	int a[] = { 10, 20, 30, 40, 50 };		// 배열 a 생성
	int *p;									// 포인터 p 생성

	p = a;									// p는 포인터고 a 역시 배열의 이름은 포인터로 쓰이므로 관련 자료형 쓸 필요 없음 (p에 a 첫번째 주소 입력됨)
	printf("a[0] = %d   a[1] = %d   a[2] = %d\n", a[0], a[1], a[2]);		// a 배열의 3개 출력
	printf("p[0] = %d   p[1] = %d   p[2] = %d\n\n", p[0], p[1], p[2]);		// p 역시 int형이므로 4비트씩 증가하므로 같은 결과가 나온다

	p[0] = 60;		// a[] 와 p[] 이 같으므로 a[]의 값을 바꾼 것과 동일함
	p[1] = 70;
	p[2] = 80;

	printf("a[0] = %d   a[1] = %d   a[2] = %d\n", a[0], a[1], a[2]);		// 변형된 a 배열 출력
	printf("p[0] = %d   p[1] = %d   p[2] = %d\n", p[0], p[1], p[2]);		// 변형된 p 배열 출력해 동일함 확인

	return 0;
}