2012-03-16 2 views
0

이클립스에서 읽기 위해 파일을 여는 데 fopen을 사용하는 데 문제가 있습니다. 열려는 파일은 모든 프로그램 파일과 동일한 디렉토리에 있으며 모든 권한이 부여됩니다. 그러나 파일은 프로그램에서 찾을 수 없습니다. (경로 제외)에만 파일 이름으로 파일을 열려고하는 프로그램이클립스에서 실행할 때 C fopen이 파일을 열지 않습니다.

: 모든 권한과 같은 디렉토리에 존재하는 파일 : "파일 이름 열 수 없습니다 파일을"

if (!(file=fopen(name,"r"))){ 
    fprintf(stderr,"Can't open file: '%s\n", name); 
      exit(0); 
} 

내가 얻을.

쉘에서 실행할 때 기존 파일의 세그먼트 화 오류가 반환됩니다. 파일을 열지 못하면 파일을 찾을 수 없으므로 파일을 찾을 수 없습니다. 나는 그것이 프로그램에서 더 이상 오류가 발생하는 것으로 생각한다.

질문은 일식이 실행 파일이 아닌 다른 디렉토리에서 검색 할 수 있습니까? 어떻게 찾을 수 있습니까? 어떻게 해결할 수 있습니까?

+0

귀하를 돕기위한 구체적인 정보를 제공하지 않았습니다. –

+0

그 밖의 어떤 정보가 필요합니까? – qwerty

+0

예를 들어, 일부 코드. 프로그램이 충돌하면 코드를 보지 않고 수정할 수없는 잘못된 코드를 작성했습니다. –

답변

2

실행 구성 대화 상자의 CDT의 인수 탭에 Working Directory 설정이 있습니다. Working Directory의 값은 실행 구성 (XML 파일)에 저장됩니다. 기본 위치는 현재 작업 공간입니다. 이 위치로 파일을 복사하거나 입력 파일을 사용하여 디렉토리로 위치를 변경할 수 있습니다. 절대 경로를 사용하여 확인할 수도 있습니다.

+0

문제가 해결되었습니다. 지적한 작업 디렉토리가 변경되었습니다. 고마워요! – qwerty

1

열려는 파일이 모든 프로그램 파일과 동일한 디렉토리에 있지만 프로그램이 실행되는 디렉토리가 아닙니다.

프로그램을 만들 위치를 확인하고 동일한 디렉토리에 파일을 저장해야합니다.

관련 문제