• ベストアンサー

C言語においてコマンドプロンプトで表示する時に文字の色を変えられますか?

コマンドプロンプトで文字を表示する時・・ 例  printf("あいうえお"); だと、コマンドプロンプトの背景は黒で表示される文字「あいうえお」は白になります。 この「あいうえお」を青色にしたり、緑色にしたりすることは可能でしょうか?

質問者が選んだベストアンサー

  • ベストアンサー
回答No.3

printf("\033[31m hello world!\n"); こんな感じでしょうか? これで、文字は赤くなります。 ところで、Windows2000以降のコマンドプロンプト環境で、ANSIエスケープシーケンスを有効にするには、それなりに工夫が要りますので、検索エンジンで調べてみてください。

その他の回答 (3)

回答No.4

 私が試した限りでは、コマンドプロンプトではエスケープシーケンスで文字の色を変えることはできないようです。 (config.nt に device=%SystemRoot%\system32\ansi.sys dosonly と入れても 折れ曲がった矢印[33m30 のように表示されるだけ。command.com では色が付くようになるけれど)  SetConsoleTextAttribute という API を使ってください。

回答No.2

エスケープシーケンスというのを調べてみてください。

参考URL:
http://www.linux.or.jp/JF/JFdocs/Bash-Prompt-HOWTO-5.html
Hypocrite_k
質問者

お礼

回答ありがとうございます! なんとなくわかったような気がします。 が、 printf("あいうえお"); にどういう風に対応していいかわかりません。 (どこに¥[~]みたいのを入れれば良いのか検討がつきません。) できれば詳しく教えてくださいませんでしょうか? わがまま言ってすみません。

  • 6dou_rinne
  • ベストアンサー率25% (1361/5264)
回答No.1

エスケープシーケンスを使えば可能です。

関連するQ&A