gpt4 book ai didi

c - 用 C 打开并读取文件

转载 作者:行者123 更新时间:2023-11-30 18:59:06 24 4
gpt4 key购买 nike

我试图用 C 打开一个文件,但我总是发现它无法打开该文件。我有以下代码:

        int i = 0;
char delims[] = " ";
char *result = NULL;
char * results[10];
result = strtok( cmdStr, delims );
while( result != NULL ) {
results[i] = result;
i++;
result = strtok(NULL, " ");
}

printf(results[1]); // it defo shows the name file here

FILE *fp;
char ch;

if((fp = fopen(results[1],"r")) == NULL) {
printf("Cannot open file.\n");
} else {

while((ch = fgetc( fp )) != EOF) {
printf("%c", ch);
}
}
fclose(fp);

Results[1] 是文件的名称。因此,如果我有类似“show file.txt”的内容,结果[0]将显示,结果[1]将显示file.txt。

但是它不会在 fopen 上打开它。但是如果我插入代码 fopen("file.txt", "r")...它就可以工作。

最佳答案

我最好的猜测是 results[1] 在末尾包含一个杂散的换行符。正如 Daniel 和 Jerry 所建议的,一个廉价的修复方法是在分隔符数组中包含 \n

<小时/>

不相关:ch 的类型应该是 int 而不是 char

关于c - 用 C 打开并读取文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13848795/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com