`check50` ANSI and HTML output do not make clear when `stdout` has unprintable characters
As in a bug like
#include <stdio.h>
int foo(char c)
{
printf('%c', c + 1);
return 0;
}
int main(void)
{
char c = 'a';
printf('%c', foo(c));
}
which ends up printing b followed by an invisible NUL (because mainprintsfoo's return value) followed by \n, which wouldn't match an expectation of b\n, but whose NUL student could not see in check50`'s output.
- which ends up printing `b` followed by an invisible NUL (because main`prints`foo`'s return value) followed by `\n`, which wouldn't match an expectation of `b\n`, but whose NUL student could not see in `check50`'s output.
+ which ends up printing `b` followed by an invisible NUL (because ``main`prints`foo``'s return value) followed by `\n`, which wouldn't match an expectation of `b\n`, but whose NUL student could not see in `check50`'s output.
Original in description:
which ends up printing
bfollowed by an invisible NUL (because mainprintsfoo's return value) followed by\n, which wouldn't match an expectation ofb\n, but whose NUL student could not see incheck50`'s output.
I think what was intended:
which ends up printing
bfollowed by an invisible NUL (becausemain`prints`foo's return value) followed by\n, which wouldn't match an expectation ofb\n, but whose NUL student could not see incheck50's output.