[英]File program - fseek isnt working
我在使此fseek()函数在我的代码中工作时遇到麻烦。 我写的文字并不是从我指出的那一点开始的,我也不知道为什么。 它应该从\\ n开始写入,并且只会覆盖所有文本文件。 即使我用a
打开它,也不会在我通过参数命令的地方进行。
fclose(file);
FILE *file_a = fopen("ex6.txt", "w");
fseek(file_a, -1, SEEK_END);
puts("Write text to add:");
while((letter = getchar()) != '\n')
{
fputc(letter, file_a);
};
怎么了? 为什么不起作用?
导航到绝对值仅在以二进制模式打开文件时有效。 当它以文本模式打开时, fseek()
无法导航到文件中除0(文件的开头)之外的绝对位置,而尝试这样做将导致不确定的行为。 但是,您可以导航到ftell()
返回的文件中的引用。 原因是由于某些操作系统对某些字符的处理。 一些实现允许它,但是POSIX并不要求它。
我知道您已在评论中解决了该问题,这仅是为了解决问题。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.