gpt4 book ai didi

c++ - 无法使用程序访问文件

转载 作者:行者123 更新时间:2023-11-30 03:31:07 26 4
gpt4 key购买 nike

我使用的是 Macbook。我使用文本编辑创建了一个文件,并在上面写了数字 3 和 4,中间有一个空格。我保存了这个名为“mydata”的文件,然后生成了“mydata.rtf”。然后我将此文件名更改为“mydata.txt”。然后我创建了这个程序来打开这个文件,然后打印文件“mydata.txt”中的值。但是,它正在打印值:a = 446595126,b = 32767。

谁能解释一下为什么这个程序不打印 3 和 4。谢谢。

#include<stdio.h>

int main(void)
{
int a, b;

FILE *fptr1;
fptr1 = fopen ( "mydata.txt", "r" );
if (fptr1 == NULL )
{
printf("FILE mydata.txt did not open\n");
}
else
{
fscanf(fptr1,"%d%d",&a,&b);
printf("a = %d, b = %d\n",a,b);
}

fclose(fptr1);
return 0;
}

最佳答案

您的文件是RTF (Rich Text Format) ,无论它的扩展名是什么:您只是重命名了它,而不是转换为不同的格式。

您看到这些值的原因是因为文件的第一个字符与您在编辑器中输入的数字不对应,而是与 RTF 格式的第一个字节对应。

作为解决方案,请再次使用 TextEdit 打开文件,然后将其保存为纯文本格式。你可以看看this post也是。

一般来说,避免使用支持丰富格式的编辑器(TextEdit、Word、Pages)来创建纯文本文件。相反,请使用其他工具,例如 BBEdit、TextWrangler(虽然我认为它已停产)、emacs、Atom、vim、nano 等。

关于c++ - 无法使用程序访问文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44458203/

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