Некоторые программы принимают цвет при передаче по каналу (например, less -r
).
Но в вашем случае вы захотите узнать, является ли ваш текущий вывод tty, и используйте isatty
и избегайте цветной печати, когда ваш вывод не является терминалом.
Вам также потребуется использовать fileno
, чтобы преобразовать FILE*
в дескриптор файла.