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 | l | l | o | 공백 | W | o | r | l | d | ! | 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] = {{1, 2, 3}, {4, 5, 6}}; //선언과 동시에 초기화하는법 int su1[][3] = {1, 2, 3, 4, 5, 6, 7, 8, 9} //저절로 세로길이에 3이들어가게됩니다. return 0; } | cs |
위와같이 쓸수있습니다.
3차원배열 4차원배열도있지만 2차원도 개인적으로 잘쓰지않는데 더많은 차원을 쓸필요가 없다고 생각되어 없앴습니다.
여기까지 블로그포스팅을 마치도록 하겠습니다.
배열 -끝-