C언어

8) 배열

SleeveStar 2021. 1. 24. 11:53
반응형

배열이란

 

예를 들어, 학생 20명의 국어 성적을 저장하려면 자료형에 상관없이 변수를 20개 선언해야한다.

short형으로 변수 20개를 선언해본다면

 

short student1, student2, student3,.........student20;

이런식으로 변수가 많아지게 되고 식이 지저분해진다.

 

그렇기에 배열선언을 통해 자료형이 같은 변수들을 그룹으로 묶어서 관리한다.

 

short student[20];  - short라는 자료형과 student라는 변수이름 그리고 대괄호안에 있는 20이 요소의 개수이다

 

 

 

 

*배열을 선언할 때 주의할점

배열 문법으로 변수를 선언할 때 컴파일러가 다음 문장만으로 배열 변수의 크기를 계산할 수 있도록 []안에 반드시 상수를 적어주어야 한다.

 

short student[20]; /* short형 (2바이트) x 20 = 40 바이트 */

 

배열로 선언한 변수의 각 요소를 직접 초기화하지 않으면 정상적이지 않은 값이 출력된다.

 

 

 

 

반복문을 사용하여 배열의 모든 요소를 0으로 초기화하기

 

short student[20], i;
for (i = 0; i < 5; i++) student[i] = 0;

 

 

 

 

배열 초기화 문법으로 배열의 모든 요소를 0으로 초기화하기

 

short student[20] = {0,}; 쉼표를 사용하여 모든 요소를 0으로 초기화

 

 

배열크기 생략하기

 

short data[ ] = {1, 2, 3, 4, 5}; 초기화에 사용하는 요소 개수만 정확하게 명시되면 배열의 크기를 생략할 수 있다.

 

배열의 요소 값 사용하기

배열의 저장된 요소 값을 읽어오거나 요소 값끼리 연산할 수도 있다.

 

short data[3];
data[0] = 2;
data[1] = data[0] + 5;  data[1]에는 7이 저장됨
data[2] = data[0] + data[1]; data[2]에는 2 + 7로 9가 저장됨

 

배열로 문자열 표현하기 

C언어에서 문자를 저장하는 데 가장 적합한 자료형은 char형이다.

 

char data[6] = {'h', 'a', 'p', 'p', 'y', 0,}

 

여기서 사용한 0은 NUKK문자를 의미하므로 작은따옴표를 사용하지 않는다

그러나 위와 같이 하나씩 나열하는 것은 불편하기 때문에 다음과 같이 C언어의 문자열형 상수 표현을 사용하여 단순하게 초기화할 수도 있다.

 

char data[6] = "happy";

 

 

반응형

'C언어' 카테고리의 다른 글

9-1) 포인터 변수의 주소 연산  (0) 2021.02.08
9)포인터  (0) 2021.01.30
7) 지역 변수와 전역 변수  (0) 2021.01.22
5)반복문  (0) 2021.01.14
4) 조건문  (0) 2021.01.13