printfのフォーマット文字列の部分に「\x1b[A;Bm」を記述すると、そのあとに表示される文字列の属性を変更することができます。
ちなみにAの部分には0か1が入り、0は暗い・1は明るいということらしいです。
Bの部分には何が入るのかイマイチわかりませんが、30~37までは色を変更するらしいです。
「printf("\x1b[0m]")」というふうにAを省略することもできます。
上のようにBの部分に0を指定すると全部リセットされるみたいです(多分)
ここでお試しプログラムを貼っておきます。
#include<stdio.h>
int main(void) {int i;
printf("ここから0の場合\n");for (i = 0; i < 0xff; i++) {
printf("i = %d, \x1b[0;%dmhelloworld\n", i, i);
}
printf("ここから1の場合");for (i = 0; i < 0xff; i++) {
printf("i = %d, \x1b[1;%dmhelloworld\n", i, i);
}
return 0;}