我在查找我想要阅读的文本文件的位置时遇到问题。我将它存储在与可执行文件相同的目录中,但它仍然没有读取文件。经过多次挖掘和搜索后,我发现问题与"派生数据有关。在Xcode中。当我查找源文件时,通过右键单击main.c文件并在finder中找到该文件,我发现它位于Derived Data中。每当我运行这个程序时,它会创建一些派生数据(Xcode应该这样做)但我的.c文件存储在这个派生数据中,当我尝试将文本文件存储在可执行文件所在的同一位置时(同一个地方) .c文件位于)我无法读取文件。
建议?
想法?
帮助..
#include <stdio.h>
#include <unistd.h>
extern int errno;
int main (void){
int term;
long long StudentID;
char lastname [16];
char firstname[16];
char subject[4];
int catalog;
char section[4];
char filename [9];
FILE *cfPtr;
printf("Enter file name: ");
scanf("%s",filename);
/*
char cwd [1024];
if (getcwd(cwd, sizeof(cwd)) != NULL)
fprintf(stdout, "Current working dir: %s\n", cwd);
*/
system("pwd");
if((cfPtr=fopen(filename,"r"))==0){
//printf("%s jlk",strerror(errno));
printf("File could not be opened\n");
}
else{
printf("%-35s%-10s%-10s%-10s%-10s\n","Last Name, First Name","Term","ID","Course","Section");
int i;
for(i=0; i<75; i++){
printf("-");
}
fscanf(cfPtr,"%d%lld%s%s%s%d%s",&term,&StudentID,lastname,firstname,subject,&catalog,section);
while(!feof(cfPtr)){
printf("%-35s%-10s%d%lld%-10s%-10s\n", lastname, firstname,term,StudentID,subject,section);
fscanf(cfPtr,"%d%lld%s%s%s%d%s",&term,&StudentID,lastname,firstname,subject,&catalog,section);
}
fclose(cfPtr);
}
return 0;
}