【发布时间】:2022-01-04 16:10:42
【问题描述】:
if(argc==1){
} else if(argc==2){
FILE *f=fopen( argv[1],"r");
if(!(f==NULL)){
jogada='x';
while(countblank(board)!=0 || (checkmoves(board,jogada)>0)){
fscanf(f,"%d%c",&fline,&fcol_char);
fcol=fcol_char-'A';
fline--;
play(board,fline,fcol,jogada);
jogada=opcolor(jogada);
if(fgetc(f)==EOF){
break;
}
}
fclose(f);
print_board(board);
}
else{
printf("\nFicheiro não foi lido\n");
}
}
我使用 gcc,当我使用 ./othello_func jogadas.txt 时,它应该读取文件 jogadas.txt 中的剧本,其中包含类似的内容
4C
3E
但是当我执行./othello_func jogadas.txt 时,它只会向我显示来自其他人的消息。
【问题讨论】:
-
“来自其他人的消息”是指
"\nFicheiro não foi lido\n"? -
@L1nK 该文件是否真的存在于您认为的位置?是不是和
othello_func在同一个目录下? -
更确切地说,
jogadas.txt文件在当前目录中是什么?当您使用 IDE 时,当前目录通常不是您所期望的... -
在 else 块中运行
perror()。 -
这是一个非常清晰的错误信息。