Chapter 11 1차원 배열
배열 int arr[7]는
int = 배열 자료형
arr = 배열 이름
[7] = 배열의 길이
로 구성되어 있다.
배열의 크기
int는 4byte 공간을 차지하기 때문에 int형태가 7개 있음으로 int arr[7]의 크기는 28byte이다.
배열 크기 확인법
sizeof(arr)를 이용하여 크기를 확인 할 수 있다.
배열 사용 이유
배열을 사용하면 다수의 변수를 간단하게 선언 할 수 있다.
또 반복문을 통해 내가 선언한 배열에 순차적으로 접근이 가능하다.
for(int I=0; I<7; I++)
arr[i]=10;
이렇게 하면 arr[0]~[6]까지 모든 배열에 10이 저장된다.
배열과 동시에 초기화
int arr[5] = {1,2,3,4,5};
int arr[] = {1,2,3,4,5,6,7}; // 이렇게 하면 arr[] 크기는 초기한 배열을 다 담을 수 있을 만큼 선언된다. 괄호 안에 숫자는 7이 된다.
문자열
char str[30] = “simple”;
s | i | m | p | l | e | \n |
↑자동으로 Null 문자 삽입 뒤에도 전부 Null문자가 삽입된다.
길이가 13인 문자 Good morning!을 삽입 하기위해서는 14의 길이의 배열이 필요하다
G |
o |
o |
d |
|
m |
o |
r |
n |
I |
n |
g |
! |
\n |
널문자는 문자열이 끝나는 걸 알려준다. ↑
C언어가 문자열을 읽을때 배열의 첫번째 부터 첫번째 널문자까지를 문자열로 인식하기 때문에 널문자가 없으면 어디서 문자열을 끝내야 하는지 컴퓨터는 알 수 없다.
그렇기 때문에 입력하려는 글자+널문자 들어갈 공간이 필요하다.
만약 위 예제에서
G |
o |
o |
d |
\n |
m |
o |
r |
n |
I |
n |
g |
! |
\n |
5번째 배열에서 널문자를 만났다면 Good까지만 출력 될 것 이다.
'언어공부 > C언어' 카테고리의 다른 글
(Chapter12) 포인터의 이해 (0) | 2021.02.13 |
---|---|
(Chapter 11) 1차원 배열 예제 (0) | 2021.02.09 |
(열혈 C프로그래밍) 도전 ! 프로그래밍 1 (0) | 2021.01.05 |
다양한 함수 정의하기 (0) | 2020.12.28 |
continue & break의 활용 예제 (0) | 2020.12.27 |