게시판 즐겨찾기
편집
드래그 앤 드롭으로
즐겨찾기 아이콘 위치 수정이 가능합니다.
구조체 배열 포인터 사용에 질문 드려봅니다
게시물ID : programmer_2240짧은주소 복사하기
작성자 : 동물이
추천 : 0
조회수 : 358회
댓글수 : 2개
등록시간 : 2014/03/30 17:31:30
안녕하세요 제가 글을 올리게 된것은 다름이 아니라 

파일 내의 데이터를 한줄 읽어들이고
토큰을 나눈뒤 각 토큰들을 선언한 구조체 배열포인터를 사용하여

StructSample Sample[Maxline];
Sample[i] = (* StructSample)malloc(sizeof(StructSample))
//i - 읽어들인 데이터의 라인 위치 

이런식으로 파일이 한줄 읽을때마다
구조체 배열의 i번째 포인터가, 할당된 구조체를 가리키게 한뒤
라인에서 자른 토큰을 구조체맴버변수에 집어넣고
i값을 증가시키면서 
파일이 끝날때까지 이작업을 계속해서 수행하게 하는 
기능을 구현중인데

i =0;
while(fread())
{
         Sample[i] = (* StructSample)malloc(sizeof(StructSample));
         //핸펀으로 쓰는지라 Malloc사용법이 잘못 되있을 수있는데
         //컴파일 에러는 없었습니다 ㅋ
         //작업수행중 블라블라
         i++;
}

이런식으로 돌아가게한다고 했을때,

i++ 로 i 값을 증가시키고 다음 번째 배열에 대해서
같은 작업을 실행시켜야하는데 시스템 오류가 뜨더라구요

컴파일시에는 문제가 없다가 러닝타임에 오류가 뜨는데
혹시나 해서 i++;를 주석처리하고
Sample[0]인상태로 실행시켜보면 문제없이
While 문이 돌아가는데
i값을 증가시키는걸 추가하면 어김없이
시스템에러가 나는데

고민해도 이유를 찾기가 쉽지않아
고민글 남겨봅니다 ㅠㅠ
전체 추천리스트 보기
새로운 댓글이 없습니다.
새로운 댓글 확인하기
글쓰기
◀뒤로가기
PC버전
맨위로▲
공지 운영 자료창고 청소년보호