C中文件IO的奇怪行为

C中文件IO的奇怪行为,c,file-io,C,File Io,我在C中的文件IO上遇到了一些疯狂的问题。我正在用C编写一种编程语言。我目前在Linux上,我在Windows上的一个朋友从GitHub中提取了存储库,使用GCC构建并运行它 基本上,程序将文件拆分为令牌并对其进行解析。这里的问题,我已经缩小到程序的文件IO端。基本上,当你读取一个文件时,它会在最后添加一些奇怪的标记,这是我朋友发给我的调试示例 Unrecognized identifier found: `VER` int, x, =, 5, ;, int, y, =, 10, ;, fn,

我在C中的文件IO上遇到了一些疯狂的问题。我正在用C编写一种编程语言。我目前在Linux上,我在Windows上的一个朋友从GitHub中提取了存储库,使用GCC构建并运行它

基本上,程序将文件拆分为令牌并对其进行解析。这里的问题,我已经缩小到程序的文件IO端。基本上,当你读取一个文件时,它会在最后添加一些奇怪的标记,这是我朋友发给我的调试示例

Unrecognized identifier found: `VER`
int,
x, =, 5, ;, int, y, =, 10, ;, fn, func_name, (, double, y, ,, int, x, ,, int, zx
asdfqasd_asd, =, 123, ), :, int,
{, }, fn, something_else, (, ), :, void, {, }, fn, main, (, ), :, void, {, somet
hing_else, (, ), ;, func_name, (, 5, ,,
5, ), ;, }, VER, =, \, \, MURRAY, -, P, <END_OF_FILE>,
这是一个混乱的版本:

LOGONSERVER=\\MURRAY-PC-2
每当我们调试一个文件时,根据文件的位置(本地,绝对路径),一个不同的系统变量会附加到文件上。我不确定什么源与此相关,因此对此表示抱歉,但我只能考虑链接整个存储库


任何帮助都将是惊人的,因为我在使用Linux时感觉失控。如果您需要任何额外的详细信息,只需询问:)

即使
ftell
应该是正确的,因为您是在
“r”
模式下打开的,而不是在
“rb”
模式下打开的,您可以得到翻译,因此
fread()
返回的文件长度可以给您不同的长度(如果Unix行尾从源文件翻译为DOS行尾,则会比
ftell()
更长,等等)。如果使用
rb
fopen()
,您的问题可能会消失

需要读取代码的源代码示例。当然可以。显然,当他们使用正斜杠时可以,但使用反斜杠时会中断。有什么想法吗?在读取
printf(“%s”,scanner->contents)后,如果是在读取或稍后的标记化过程中进行调试吗;
--如果打印得很好,那么您需要调试您的标记器。我认为RB的工作正常,非常感谢!
VER=\\MURRAY-P
LOGONSERVER=\\MURRAY-PC-2