pack_fgets(3) Reads a line from the stream. Allegro game programming library.


#include <allegro.h>

char *pack_fgets(char *p, int max, PACKFILE *f);


Reads a line from the stream `f', storing it at location pointed to by `p'. Stops when a linefeed is encountered, or `max' bytes have been read. The end of line is handled by detecting the right combination of characters for the platform. This supports CR-LF (DOS/Windows), LF (Unix), and CR (Mac) formats. However, the trailing carriage return is not included in the returned string, in order to provide easy code portability across platforms. If you need the carriage return, use pack_fread() and/or pack_getc() instead.

Note: This function internally may make calls to pack_ungetc, so you cannot use pack_ungetc directly afterwards.


   char buf[256];
   while (pack_fgets(buf, sizeof(buf), input_file)) {
      /* Process input line. */


Returns the pointer `p' on success, or NULL on error.