c언어 배열 관련 질문입니다.

c언어 배열 관련 질문입니다.

작성일 2022.11.23댓글 1건
    게시물 수정 , 삭제는 로그인 필요

2차원배열에서 개념이 세로 포인터 배열을 생성하고 세로 포인터 배열에는 가로 배열 주소가 들어간다는 걸로 알고 있습니다.

질문1. 2차원 배열에서 배열 a[0]은 가로 한줄을 의미한다 했는데, 맞나요? a[0]은 그냥 예시입니다.

그럼
int**m = malloc(sizeof(int*)*3; //m은 포인터이름, 3은 세로 크기
for (int i = 0; i < 3; i++)
{
m[i] = malloc(sizeof(int)*4);  //가로배열 생성 , 4는 가로크기
}


질문2. 가로배열 생성 단계에서 메모리를 할당후 주소값을 반환하여 m[i]에 주는 문장에서 m[i]는 
int**m = malloc(sizeof(int*)*3; 여기서 만든 세로배열을 의미하나요? 세로배열을 의미한다면 2차원배열에서 a[0]은 가로한줄을 의미한다했는데 m[i]가 세로면 개념이 안맞아서 혼동이 오네요 알고싶습니다.


#c언어 배열 #c언어 배열 초기화 #c언어 배열 출력 #c언어 배열 길이 #c언어 배열 크기 미지정 #c언어 배열 포인터 #c언어 배열 복사 #c언어 배열 정렬 #c언어 배열에 값 넣기 #c언어 배열 동적할당

profile_image 익명 작성일 -

그렇게 개념 잡으면 담에 혼란에 빠집니다.

지금 그건 중첩 배열입니다.

가로 세로의 개념이 아니죠.

다차원 배열과 중첩 배열은 다릅니다.

방을 세개 만들고

방마다 사물함을 네개씩 놓았다고 보면 됩니다.

m은 방에대한 어레이고

m[x]는 각 방이며 각 방의 사물함에대한 어레이죠.

m[x][y]는 x번방 y번 사물함이 되는 겁니다.

3중첩 배열을 생각하면

건물, 방, 사물함 개념으로 이해하면 되죠.

중첩 배열의 장점은

각 방마다 다른 갯수의 사물함을 놓을 수 있다는 점

단점은 다차원 배열보다 메모리를 많이 먹는 점

3x4로 상수 크기로 고정이라면

다차원 배열이 더 유리합니다.

int (*x)[4] = malloc(sizeof(int[3][4]));

앞 크기가 변수라면

int z = 123;

int (*y)[4] = malloc(sizeof(int[4])*z);

이렇게 하면 되고

뒷 크기가 변수면 중첩 배열을 써야 합니다.

3차원 배열 a*4*5는

int a = 123;

int (*b)[4][5] = malloc(sizeof(int[4][5])*a);

c언어 배열 관련 질문입니다.

... //가로배열 생성 , 4는 가로크기 } 질문2. 가로배열 생성 단계에서 메모리를 할당후 주소값을 반환하여 m[i]에 주는 문장에서 m[i]는 int**m = malloc(sizeof(int*)*3;...

C언어 배열 관련 질문드립니다

... 배열은 대부분의 수식에서 첫번째 요소가 저장된 메모리의 주소(포인터값)으로... 참고로, 배열은 sizeof, &, ++, = 나 점(.) 연산자의 왼쪽에 있을 때는 포인터 값으로의...

c언어 배열 및 이중포인터 질문

이중포인터 초기화 관련해서 문의 사항이 있습니다. 아래와 같이 초기화를 하면 array 배열의 값이 변경 됩니다. 결과값이 아래와 같이 변경 됩니다....

C 언어 배열 관련 질문입니다.

... 있어요 배열로 10개의 점수를 출력하고... //여기서부터 배열을 순차적으로 접근하죠?? for(i=0;i... // 윗줄을 보면 현재 max값과 해당 배열의 값을 비교...

C언어 배열 관련 질문

... 3번째는 배열의 값 끼리 연산해서 집어넣을 수 있다는 것을 보여주기 위한 예시고 4번째는 따로 키보드를 이용해 입력을 받은 값으로 어떻게 저장하는지를 보여주기 위한...

c언어 배열관련 질문입니다.

... return 0; } 배열의 크기를 정하지 않고, 입력 받는 값에 따라 크기가... C언어에서.. int n = 3; int s[n] = {1,2,3}; 이란 명령은 쓸수 없습니다. int s[4+2] = {1,2,3}; 같이...

c언어 배열관련 질문

제가 현재 c언어 배열을 배우고 있는데 밑에 연습문제를 도저히 모르겠어서 이렇게 올립니다. 소스코드 알려주시면 감사하겠습니다..! 1차원...

c언어 배열관련 질문 도와주실 수...

c언어 배열관련된건데요. 다차원 배열이 있잖아요. 예를들어서 1차원 배열 2차원 배열 3차원 배열 이렇게요. 그러면 2차원 배열이나 3차원 배열을 사용하는...

c언어 배열관련 질문 도와주실 수...

c언어 배열관련된건데요. 다차원 배열이 있잖아요. 예를들어서 1차원 배열 2차원 배열 3차원 배열 이렇게요. 그러면 2차원 배열이나 3차원 배열을 사용하는...