게시판 즐겨찾기
편집
드래그 앤 드롭으로
즐겨찾기 아이콘 위치 수정이 가능합니다.
[본삭금] 2차원배열동적할당 질문입니다...
게시물ID : programmer_6932짧은주소 복사하기
작성자 : 人人ㅣ
추천 : 0
조회수 : 679회
댓글수 : 9개
등록시간 : 2014/12/04 22:27:14
옵션
  • 본인삭제금지
매번 오유 도움을 많이 받네요 ㅠㅠ
과제를 하는데 막히는게 있어서요..
 
http://i.imgur.com/Z2DVVRE.png
이러한 자료구조로
http://i.imgur.com/AQJFeW1.png
이런식으로 뜨게 하는건데

이게 입력받을때 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;
}
전체 추천리스트 보기
새로운 댓글이 없습니다.
새로운 댓글 확인하기
글쓰기
◀뒤로가기
PC버전
맨위로▲
공지 운영 자료창고 청소년보호