Why do we not specify --std=c99 or --std=c11 on the command line?

This is because the GNU GCC compiler then strictly adheres to the C99 or C11 versions of the ISO C standard, which does not include functions and macros provided by POSIX.

The goal of the ISO C standard is to allow the creation of portable C programs that will run on any OS. POSIX extends ISO C with a number of functions POSIX-compliant systems implement.

In this class, we focus mostly on those.