/* getstr.c - copy stdin to stdout up to null byte. */ /* PDKSH USAGE. readstr() { str=$(getstr && echo eof) && str=${str%eof}; } find . -print0 | while readstr; do stat "$str"; done */ #include int c; int main() { setbuf(stdin,0); switch(c=getchar()) { case EOF: return 1; case 0: return 0; loop: switch(c=getchar()) case EOF: case 0: return 0; default: putchar(c); goto loop; }}