Qusetion five: "What does the expression SCHAR_MAX == CHAR_MAX evaluate to?" should be undefined exactly because char type can be signed or unsigned (as admitted in the explanation). If the question is about specific ABIs, it should be stated in the question.