1차원 배열

선언은 int 이름[변수개수]로 선언할수있습니다.

변수를 여러개 한번에 생성할수있습니다.


선언방법의예: int num[10];

배열의 바이트수: 자료형의바이트수 X 변수의개수 (만약 int num[10]이라면 40바이트입니다.)


배열의활용법:배열을 int num[10];이렇게 했다면 

 0

 1

 2

 3

 4

 5

 6

 7

 8

 9

이렇게 인덱스값이라는것이 존재합니다.

만약 배열의 4번째에 값을 넣고싶다면 3을 써야합니다. 배열에서는 0부터셉니다. 예:int num[3] = 4;

소스코드↓

1
2
3
4
5
6
7
8
#include<stdio.h>
 
int main(void){
    int num[10];
    num[3= 4;
    char str[] = "Hello World!"//문자열을 넣는것인데 자동으로계산해서 13라는길이가 들어가게됩니다.
    return 0;
}
cs

위의 Hello World!가 13가되어 들어간이유

 H

e

 공백

 W

null 

문자열은 위와같이 null값이 맨뒤에 자동으로 붙게됩니다.(null이 붙어야 문자열이 완성된것입니다.)

그래서 길이는13 하지만 C언어는 0부터세기 때문에 인덱스값은 12가됩니다. 


2차원배열

선언방법:int 이름[세로][가로]

예:int num[2][3];

위의인덱스값 정리

 [0][0]

[0][1] 

[0][2] 

 [1][0]

[1][1]

[1][2] 

이렇게 선언했다고 볼수있습니다.

소스코드↓

1
2
3
4
5
6
7
8
9
 
#include<stdio.h>
 
int main(void){
    int num[2][3= {{123}, {456}}; //선언과 동시에 초기화하는법
    int su1[][3= {123456789//저절로 세로길이에 3이들어가게됩니다.
    return 0;
}
 
cs

위와같이 쓸수있습니다.

3차원배열 4차원배열도있지만 2차원도 개인적으로 잘쓰지않는데 더많은 차원을 쓸필요가 없다고 생각되어 없앴습니다.

여기까지 블로그포스팅을 마치도록 하겠습니다.

배열 -끝-


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

구조체  (0) 2018.01.12
포인터  (0) 2018.01.12
함수  (0) 2018.01.12
switch문  (0) 2018.01.12
입출력관련  (1) 2018.01.12

+ Recent posts