매번 오유 도움을 많이 받네요 ㅠㅠ
과제를 하는데 막히는게 있어서요..
이러한 자료구조로
이게 입력받을때 4x4 이내의 범위에서는 출력이 다 되는데
저기 예시처럼 3x5 이런식으로 하면 오류가 떠서요...
3x5까지 먹히게 하려고 하는데,,, 걍 제 눈높이에서는 입력 행열을 다 입력받으니까 가능할 것 같은데 "stack around the variable "ary" was corrupted 라고 뜨네요..음...방향이라도 잡아주실 분...안계씰까요 ㅠㅠㅠ흑
밑에는 소스입니다..
#include <stdio.h>
#include <stdlib.h>
int main()
{
int i,j,a,b;
int *pi, *ary[4];
printf("생성할 2차원 배열의 행과 열을 입력하시오(예) 3 5 : ");
scanf("%d %d",&a, &b);
pi=(int *)malloc(sizeof(int));
for(i=0;i<b;i++)
{ ary[i] = (int *)malloc(sizeof(int)*b); }
for(i=0;i<a;i++){
for(j=0;j<b;j++)
{
ary[i][j]=i+j;
}
}
for(i=0;i<a;i++){
for(j=0;j<b;j++)
{
printf("%2d", ary[i][j]);
}printf("\n");
}
for(i=0;i<b;i++)
{
free(ary[i]);
}
return 0;
}