Return Styles: Pseud0ch, Terminal, Valhalla, NES, Geocities, Blue Moon. Entire thread

Functional C

Name: Anonymous 2011-12-12 12:06

is it possible to write C in a functional manner?

Name: Anonymous 2011-12-13 6:37


#include <stdio.h>


int t1(char* string, FILE* out) {
  return (*string == '\0') ? 0
                           : (((out == stdout) ? t1(string + 1, stderr)
                                              : t1(string + 1, stdout)),
                              fputc(*string, out));
}

int main(int argc, char** argv) {
  return (argc == 0) ? 0
                     : ((t1(*argv, stdout), fputc('\n', stdout)),
                        main(argc - 1, argv + 1));
}

Newer Posts
Don't change these.
Name: Email:
Entire Thread Thread List