| 1 | // open() isn't C or C++; it's POSIX
|
| 2 |
|
| 3 | #include <fcntl.h> // open
|
| 4 | #include <stdarg.h> // va_list, etc.
|
| 5 | #include <stdio.h> // vprintf
|
| 6 |
|
| 7 | // #include "dumb_alloc_leaky.h"
|
| 8 | // #include "mylib.h"
|
| 9 |
|
| 10 | void log(const char* fmt, ...) {
|
| 11 | va_list args;
|
| 12 | va_start(args, fmt);
|
| 13 | vprintf(fmt, args);
|
| 14 | va_end(args);
|
| 15 | printf("\n");
|
| 16 | }
|
| 17 |
|
| 18 | int main(int argc, char** argv) {
|
| 19 | log("hello %d", argc);
|
| 20 |
|
| 21 | if (argc == 2) {
|
| 22 | int fd = ::open(argv[1], 0, 0);
|
| 23 | log("fd = %d", fd);
|
| 24 | } else {
|
| 25 | log("expected filename");
|
| 26 | }
|
| 27 | return 0;
|
| 28 | }
|