fork download
  1. #include <stdio.h>
  2.  
  3. #define MAX_ROWS 512
  4. #define MAX_COLS 512
  5.  
  6. char *file_content[MAX_ROWS];
  7.  
  8. void readFile(char *file_name, char **file_content) {
  9. char const* const fileName = file_name;
  10. FILE* file = stdin;//fopen(fileName, "r");
  11.  
  12. int i = 0;
  13.  
  14. char line_buf[MAX_COLS];
  15. line_buf[MAX_COLS-1] = '\0';
  16. while(fgets(line_buf, MAX_COLS-1, file)) {
  17. size_t len = strlen(line_buf);
  18. file_content[i] = calloc(len,sizeof(char));
  19. memcpy(file_content[i], line_buf, len);
  20. file_content[i][len-1] = '\0';
  21. i++;
  22. }
  23.  
  24. for(int j; j<i; ++j)
  25. {
  26. printf("line %d: %s \n",j,file_content[j]);
  27. }
  28. fclose(file);
  29. }
  30.  
  31. int main(void) {
  32. readFile(NULL,file_content);
  33. return 0;
  34. }
  35.  
Success #stdin #stdout 0s 9432KB
stdin
test
line2
another line
empty line following



stdout
line 0: test 
line 1: line2 
line 2: another line 
line 3: empty line following 
line 4:  
line 5:  
line 6: