diff --git a/userland/c/infinite_loop.c b/userland/c/infinite_loop.c index 9c63eb5..ad4f546 100644 --- a/userland/c/infinite_loop.c +++ b/userland/c/infinite_loop.c @@ -13,12 +13,19 @@ #include int main(int argc, char **argv) { - uintmax_t i, j, period; + uintmax_t i, j, period, max; + int max_given; if (argc > 1) { period = strtoumax(argv[1], NULL, 10); } else { period = 100000000; } + if (argc > 2) { + max = strtoumax(argv[2], NULL, 10); + max_given = 1; + } else { + max_given = 0; + } i = 0; j = 0; while (1) { @@ -27,5 +34,7 @@ int main(int argc, char **argv) { printf("%ju\n", j); j++; } + if (max_given && i == max) + break; } }