C언어_ch10_정리

728x90

ch10. 배열

-배열 : 같은 종류의 대량 데이터들 여러 개 저장하는 저장장소

[배열 특징]

-메모리의 연속적인 공간에 저장됨

-인덱스로 각 요소에 차례로 접근하여 처리 가능

[배열 선언]

-int 배열명[크기];

//배열 크기는 정수형 상수만 사용 가능 (변수 사용 불가)

//전처리기로 정의해둔 기호상수까지는 사용 가능

[배열 요소 접근]

-각각의 배열 요소 한 개 = 변수 1

인덱스로 접근하여 각 배열 요소에 값을 저장, 요소에 저장된 값을 꺼내올 수도 있음

 

[배열과 반복문]

for문으로 배열 처리 효과적

 

[인덱스 범위]

-배열 인덱스 범위 초과하여 접근 시 쓰레기값 출력 (컴파일 시에는 오류 체크 X)

-배열 인덱스 범위 초과하는 인덱스에 값을 저장할 경우 중단될 수 있음

-엉뚱한 메모리 위치로 접근 가능성 있음

 

10.2 배열의 초기화

1) 배열 크기 > 초기값 개수 : 나머지 배열 요소는 ‘0’ 으로 초기화

2) 배열 크기 < 초기값 개수 : 컴파일 오류

3) int 배열명[] : 배열 크기 비워놓고 초기화해두면, 초기값 개수만큼 배열 크기 할당함

4) 초기값 주지 않은 지역변수형 배열 : 내부요소에 쓰레기값 할당되어있다.

 

[배열요소 개수]

int size = sizeof(배열명) / sizeof(배열[0]);

= 전체 배열 크기 / 배열 요소 1개 크기

 

[배열 복사]

-for문 반복 구조 사용하여 각 배열 요소 하나씩 복사해주어야 함

for(i = 0; i< SIZE; I++) {

b[i] = a[i];

}

[배열 비교]

-각각의 배열 요소 하나씩 접근해서 비교함

[2차원 배열 초기화]

-선언과 동시에 초기화할 경우에 한해서

행의 개수는 지정안해도 되지만

열의 개수는 반드시 지정해야 함

-초기값 지정 안해둘 경우

1) 전역변수 배열 :초기값 0 초기화

2) 지역변수 배열 : 쓰레기값 초기화

728x90

'C++, C언어 > [문법]_C언어' 카테고리의 다른 글

C언어_ch11_정리  (0) 2021.12.20
C응용_ch09_정리  (0) 2021.12.20
혼.공.C언어_프로그램예제_전체코드정리  (0) 2021.07.27
혼.공.C언어_전범위_정리  (0) 2021.07.27
나도코딩_C언어_전범위정리  (0) 2021.07.27