ftell

    -4热度

    1回答

    我学习了如何在C语言中编程,而且我一直在使用文件很困难。 我该怎么做,例如,有两个文件。它上面有1到10名学生的姓名和成绩。 像: John 10 John 5 Alex 6 Alex 9 Mary 8 Mary 6 我要如何接取具体的数字,从给定的学生,并添加数字为例,做我必须使用FSEEK,SEEK_END,或者我应该FTELL使用? 并取所有的中位数? 代码应该如何? EDIT

    4热度

    1回答

    说,我有一个原始的数字文件描述符,我需要根据它获取文件中的当前位置。 import os, psutil # some code that works with file lp = lib.open('/path/to/file') p = psutil.Process(os.getpid()) fd = p.get_open_files()[0].fd # int while T

    0热度

    1回答

    我需要循环槽目录,data和读取每个文件,满足一定的条件下,在一个字符串,用它做什么。出于某种原因,它的fseek呼叫失败后(输出目录中的第一个文件的唯一名称)。 任何想法,我究竟做错了什么? #include <stdio.h> #include <stdlib.h> #include <dirent.h> #include <string.h> void doAlgorithm(ch

    3热度

    1回答

    任何人都可以在内存流中解释ftell()的'正确'语义。 给出的下列程序: #include <stdio.h> #include <stdlib.h> #include <gnu/libc-version.h> int main(void) { puts (gnu_get_libc_version()); size_t n_buffer = 1024;

    0热度

    2回答

    我对C非常陌生。我试图编写一个在I/O流中查找字符串的代码,但我不明白我做错了什么。我知道这个错误可能是在大的while循环中(在下面的代码中)。 我希望函数以字节的形式从流的开头返回位置,如果由于某种原因失败,则返回-1。它只是保持返回-1为我尝试它的任何文件。 long find_string(const char *str, const char *filename, long offset

    0热度

    1回答

    为了跟踪I/O调用,我在运行程序时在LD_PRELOAD共享库中覆盖了fwrite。在我的版本的fwrite,我得到的绝对使用 long int pos = ftell(stream); 值然后传递给需要的size_t参数(因此无符号长)函数写的偏移,并打印值。 我遇到了一些调用18446744073709551615作为偏移量(2^64 - 1),所以我猜ftell返回的初始long int

    4热度

    1回答

    我有一个名为myfile.txt的文本文件,其内容为: line 1 l 我的代码: #include<stdio.h> int main(){ FILE *f = fopen("myfile.txt","r"); if(f==NULL){ FILE *fp=fopen("myfile.txt","w"); fclose(fp); f

    -1热度

    1回答

    我有一个项目中的这2个函数加载并保存用户的信息到一个文件中。每个用户都保存在文件的新行中。我的问题是,当我尝试使用ftell(f)时,程序崩溃。当我打印ftell(f)后,它用fopen()打开文件后打印-1。我尝试在errno中看到错误,但是它在fopen()后打印出“NO ERROR”,但当我使用fseek修改文件指针f位置时,会显示“INVALID ARGUMENT”。 我的问题是在我的Lo

    0热度

    1回答

    我试图让我的程序在每个孩子的时间(每个行包含一个INT)读取一行。每次我执行这个阅读时,它都会继续阅读第一行。 这里是我的代码的基础。 void forkChildren (int nChildren) { int i; int size; int sum = 0; int tell = 0; pid_t pid; for (i = 0; i < nChildren; i++) {

    0热度

    4回答

    根据手册,如果在fopen()函数中选择a/a+模式,文件指针将被放置在最后。 但是为什么我使用ftell()和feof()仍然返回false?如果文件指针在末尾。 e.g: $handle=fopen("./file.txt","w"); fwrite($handle,1234567890); fclose($handle); $handle=fopen("./file.txt","a+"