So, I'm trying to find a way fgets () for a specific line in a C text file to copy the contents of the line to a more constant buffer:
Essentially, I was wondering if there is a way to do this without something similar to the following code:
FILE *fp;
fp = fopen(filename, "r");
char line[256];
char * buffer;
int targetline = 10;
while( targetline > 0)
{
fgets(line, 256, fp)
}
buffer =(char*)malloc(sizeof(char) * strlen(line));
strcpy(buffer, line);
So basically I don’t want to iterate over the file n-1 times to get to the nth line ... it just doesn't seem very efficient (and if it's homework, I need to get 100% haha).
Any help would be appreciated.
source
share