Helloの色を変えてみよう | 技術者が教える初心者さんのためのC言語

技術者が教える初心者さんのためのC言語

〜最小限の知識でプログラム〜

いつも感謝しています。Nです。

「3つの手順の実行」記事
http://ameblo.jp/engineertalksc/entry-12085484428.html
でHelloと表示するプログラムを皆さんに書いてもらいました。

今日は、表示されるHelloの「文字色」を変えてみましょう。

まずは暫くの間、Helloを表示する簡単なプログラムを、少しずつ少しずつ変えて皆さんと一緒に「3つの手順」を多く経験したいと思っています。

この少しずつ少しずつプログラムを変えていくことが、実はとても大切です。この積み重ねによって、皆さんのプログラム能力も少しずつ少しずつ向上してきます。
ですから、今は焦らずに一歩ずつ一歩ずつ前進して行きましょう。

表示されるHelloの文字色を変えるプログラムを作成する前に、printf関数について少し簡単に説明します。

Helloを表示するプログラムで、

printf("¥nHello");

という箇所がありました。ここには、3つのポイントが潜んでいます。

1つ目のポイントは、printfの部分です。
コンピュータは printf と言われると、「端末に何か表示するんだなぁ」と理解します。

2つ目のポイントは、("  ");の部分です。
コンピュータは、「"" で囲まれた部分を表示するんだ」と理解します。

3つ目のポイントは、¥n の部分です。
これは、"エスケーブシーケンス"というもので、いわゆる特殊文字です。
¥から始まるのが特徴で、その後に続く文字と合わせて特殊な意味としてコンピュータは理解します。例えば、この¥nであれば、「改行する」という意味になり、コンピュータは改行を行います。

printf("¥nHello");  → 表示しろ「改行してHello」
printf("¥n¥nHello"); → 表示しろ「改行改行してHello」
printf("Hello¥n");  → 表示しろ「Hello 改行」
printf("Hello¥n¥n"); → 表示しろ「Hello 改行改行」
printf("Hello");   → 表示しろ「Hello (改行なし)」

そして、このエスケープシーケンス(特殊文字)は色々あります。

さて、今回はこの"エスケープシーケンス"を用いてHelloの文字色を変えたいと思います。
まずは以下の手順を実行してみてください。

Step1: 以下のリンクより、今回のプログラムをダウンロードしてください。
https://www.dropbox.com/s/loo8uq0cgxchrfy/hello1.c?dl=0

Step2: ファイル名はhello1.cとして、「3つの手順」を実行してみてください。

Step3: 以下に文字色に関わるエスケープシーケンスを記載しますので、色をかえてみましょう。ダウンロードしたプログラムでは、黄色になっています。

文字色を黒色にする→ ¥033[30m
文字色を赤色にする→ ¥033[31m
文字色を緑色にする→ ¥033[32m
文字色を黄色にする→ ¥033[33m
文字色を青色にする→ ¥033[34m
文字色を紫色にする→ ¥033[35m
文字色を水色にする→ ¥033[36m
文字色を白色にする→ ¥033[37m
画面クリア → ¥033[2J

Step4: もしアイデアが出たら、それも「3つの手順」で実行してみましょうね。

たとえば、That is interesting.のinterestingを赤色で表示してみようとか、思いついたことをプログラムしてみてくださいね。