// Trying to store the the data from a text file into an array
char *buff(const char *path){
int end = 0;
char * buf;
int f_write = open(path,O_RDONLY);
end = lseek(f_write,0,SEEK_END);
buf =(char*)malloc(sizeof(char*)*(end+1));
read(f_write,buf,end+1);
close(f_write);
buf[end+1]= '\0';
printf("%s\n",buf);//Prints empty line because buf has not been populated
return buf;
}
Я пытаюсь создать функцию, которая открывает файл, затем я использую lseek для подсчета количества данных, которые у меня есть в файле, затем я делаю массив массивов buf с количеством подсчитанных данных и считываю из файла и заполнить массив buf. Затем функция возвращает массив buf. * 1002 *
Проблема, с которой я столкнулся, заключается в том, что по какой-то причине мой массив buf не заполняется данными из файла. Таким образом, printf выводит пустую строку в функции buff. Есть мысли о том, почему это происходит?