мне нужно подсчитать количество строк в файле, однако, я должен сделать это без «легких» функций, таких как: fopen
, fscanf
, fgets
... и так далее ,Чтение количество строк в файле
Значение Я не могу это сделать:
int calculateLines(char *filename)
{
FILE *myFile;
char c;
int myLines = 0;
myFile = fopen(filename, "r");
if(myFile == NULL)
return 0;
while ((c = fgetc(f)) != EOF)
if(c == '\n')
myLines++;
fclose(f);
if(c != '\n')
myLines++;
return myLines;
}
Для этого, я могу использовать только системные вызовы read
, write
, close
, open
& fork
.
Из того, что я сделал до сих пор, я думаю, что:
- открыть файл с
open
:someResult = wrapper_open(argv[1],O_RDONLY,0);
- чтения строки после строки с
read
: Могу ли я как-то манипулировать чтения читать строку после строки ? Я попытался проверить его учебник, но пришел с пустыми руками.
Я не предполагаю, что вам будет разрешено использовать 'system (" wc -l file ");' :-) –
@AdamLiss: Желаю :) – ron