for C, it makes the compiler strictly adhere to the C89 standard. I.e you cannot use // comments, must declare all variables at beginning of scope, etc. Any attempt will flag an error.
Yes, a checkbox will suffice.
From man gcc:
-ansi
In C mode, support all ISO C90 programs. In C++ mode, remove GNU extensions that conflict with
ISO C++.
This turns off certain features of GCC that are incompatible with ISO C90 (when compiling C
code), or of standard C++ (when compiling C++ code), such as the "asm" and "typeof" keywords,
and predefined macros such as "unix" and "vax" that identify the type of system you are using.
It also enables the undesirable and rarely used ISO trigraph feature. For the C compiler, it
disables recognition of C++ style // comments as well as the "inline" keyword.