주어진 코드가 유효한 파일인지 확인하기 위해 코드를 사용하여 오류 검사를 시도했습니다. 다음 코드 :이 fileIn가 null null가 아닌 것을 말하고 그래서 기본적으로 C에서 argv [i]의 fopen을 검사하는 중 오류가 발생했습니다.
The (null) file doesn't exist
Output from else if loop
:
int main(int argc, char *argv[]){
for(int i = 1, i <=argc, i++){
FILE *fileIn = fopen(argv[i],"r");
if(fileIn == NULL){
fprintf(stderr,"The file %s doesn't exist.",fileIn);
}
else if (fileIn != NULL){
do a bunch of stuff, including printing out values from a struct
}
오전 데 문제는 내가 내 프로그램을 실행할 때 내가 출력으로이를 얻을 수있다 동시에. 그것은 정상적으로 파일을 읽고 그것을해야대로,하지만 그것은 오류를 통해 매번 실행됩니다. argv [i 또는 무엇인가에 대한 포인터를 할당하는 방법이 있습니까? 어떻게 된 일인가?
대단히 감사 드리며 작동하는지 확인해 드리겠습니다. 또한 조건부 테스트를하기 위해 조건부를 넣었습니다. 원래는 다른 테스트 방식과 동일하게 두 가지로 덤핑되는 이유인지 확인하고 싶었습니다. –