반응형
아래 포스팅에서 배열 선언방법과 그 배열의 크기에 대해서 알 수 있다.
https://ansan-survivor.tistory.com/1188
보통 배열을 선언할 때, 행과 열의 크기를 선언한다. ex) arr[3][4] , 3x4 행렬 배열
배열을 선언할 시 위와 같이 행과 열의 크기를 선언하지만,
column 값만 넣으면 나머지 알아서 할당이 된다. (row값 생략 가능)
즉, arr[ ][3] 이런식으로 선언할 수 있다.
그러면 가로 길이(row)는 내가 넣은값에따라 컴파일러가 알아서 계산을 해준다.
#include <stdio.h>
/*
2차원배열 크기를 알려주지 않고 초기화 하기.
** 세로길이(row)만 생략할 수 있다. column은 표시해주어야 함.
*/
int main()
{
// 2차원 배열의 초기화방법
// 가로길이에 대한 정보는 반드시 제공해야한다.
// 그러면 나머지 길이는 컴파일러가 계산해서 넣음.
int arr1[][4] = { 1,2,3,4,5,6,7,8 };
/*
[1 , 2] 세로의 길이 4
[3 , 4]
[5 , 6]
[7 , 8]
*/
int arr2[][2] = { 1,2,3,4,5,6,7,8 };
/*
[1, 2, 3, 4] 세로의 길이 2
[5, 6, 7, 8]
*/
return 0;
}
만약 column을 생략하고 row만 넣으면 에러때문에 컴파일이 불가능하다.
(결과)
int는 4 byte이므로,
4 byte x 8개 = 32 byte 사이즈가 나온다.
반응형
'C언어 \ C++' 카테고리의 다른 글
[C언어] C언어 입력시 발생한 버퍼(buffer) 비우기. fputs, fgets 함수 사용. (0) | 2022.01.12 |
---|---|
[C언어] C언어 함수에 배열을 input 인자로 전달하기 (0) | 2022.01.11 |
[C언어] C언어 배열의 크기에 대해서, 배열 크기 보기 sizeof 함수 (배열 몇 개 들어있는지 확인) (1) | 2022.01.10 |
[C언어] 실수(float number)의 비트 표현, C언어 실수 사용하기, 실수 0.0의 의미 (2) | 2022.01.10 |
[C언어] C언어 음의 정수(Negative Integer)의 비트 표현 방법. 마이너스 비트 표현 (0) | 2022.01.10 |