mirror of
https://github.com/cc65/cc65.git
synced 2024-11-19 06:31:31 +00:00
aa6f850b8d
+19 bytes if used alone, because it pulls in fgets, but as code is factorized, -128 bytes in programs using both fgets and gets.
47 lines
746 B
C
47 lines
746 B
C
/*
|
|
!!DESCRIPTION!! gets test
|
|
!!LICENCE!! Public domain
|
|
*/
|
|
|
|
#include "common.h"
|
|
|
|
#include <stdlib.h>
|
|
#include <stdio.h>
|
|
#include <unistd.h>
|
|
#include <fcntl.h>
|
|
#include <ctype.h>
|
|
|
|
char buf[512];
|
|
|
|
#define INFILE "cf.in"
|
|
|
|
#ifndef __CC65__
|
|
/* Force declaration on host compiler, as gets() is deprecated for
|
|
* being dangerous as hell */
|
|
char *gets (char *__s);
|
|
#endif
|
|
|
|
#ifdef NO_OLD_FUNC_DECL
|
|
int main(int argc,char **argv)
|
|
#else
|
|
main(argc, argv)
|
|
int argc;
|
|
char *argv[];
|
|
#endif
|
|
{
|
|
/* Fake stdin with the reference file */
|
|
fclose(stdin);
|
|
stdin = fopen(INFILE, "r");
|
|
if (stdin == NULL) {
|
|
return EXIT_FAILURE;
|
|
}
|
|
|
|
while (gets(buf) != NULL)
|
|
{
|
|
printf("%s",buf);
|
|
}
|
|
|
|
fclose(stdin);
|
|
return 0;
|
|
}
|