Экранирующая строка C ++ escape \e
для escape-символа является нестандартным расширением GCC для C для escape-символов (также принятым Clang, вероятно).
Вам просто нужно указать восьмеричное кодирование, например, \033
или \x1b
Однако следует помнить, что \e[32;40m
не является стандартным C или C ++, это escape-последовательность терминала ANSI, связанная с tty -s.