0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

エスケープシーケンス、変換指定子について

Last updated at Posted at 2024-10-26

#目次
エスケープシーケンスとは
よく使うエスケープシーケンス
変換指定子について
よく使われている変換指定子
変換指定子のポイント
まとめ

エスケープシーケンスとは

C言語のエスケープシーケンスは、文字列や文字の中で特別な指示を与えるために使われる特殊な文字です。エスケープシーケンスを使用することで、改行やタブ、特定の制御文字などを表現できます。

要約すると、プログラムの中で文字や数字に対して、「合図」を送って特別な指示を送っています。

よく使うエスケープシーケンス

1.\n改行:
行を変えて、新しい行から文字を表します。
Hello\nWorld!と入力すると

Hello
World!

2.\tタブ
横にスペースを開けて文字を表示します。
Hello\tWorld!と入力すると

Hello  World!

3.\\バックスラッシュ
バックスラッシュ(\)そのものを表示します。普通は「エスケープシーケンスの始まり」を意味をする記号なので\\と2つ続けて書くと、バックスラッシュを表示することができます。
C:\\Program Filesと入力すると

C:\Program Files

4.\"ダブルクォート
ダブルクォートを表示します。普通の文字として表示したい時に使います。
"He said, \"Hello\"!"と入力すると

He said, "Hello"!

5.\'シングルクォート
シングルクォートを表示します。ダブルクォートと同じように特別な文字として使います。
It\'s fun!'と入力すると

It's fun!

文字列とは

""で囲まれた部分。文字列リテラルとも呼ばれます。

printf("21+10");

この記述では出力が21+10とされ、計算せずに表示されます。
これは文字列と認識されているため、計算できないことを示しています。

計算するために、文字列から数値と読み込ませるために必要なのが、変換指定子になります。

変換指定子について

変換指定子は、プログラムで数や文字などを綺麗に表示したい時に使う「特別なルール」です。例えば、数を表示するときの指定や、文字列を表示するときの指定ができます。変換指定子を使うことで、画面にきちんとした形で数や文字を出すことができます。

要約すると、%のマークを使って、「ここには数を入れて!」や「ここには文字を入れて!」とPCに指示をします。

よく使われている変換指定子

1.%d整数(普通の数)
「d」はdecimal「デシマル」の略です。
普通の整数を表示したい時に使います。少数点含まない数です。
printf("%d", 10);結果:10

例:整数を表示する

int age = 12;
printf("I am %d years old.\n", age);

結果:I am 12 years old.

2.%f少数
小数点がある数(3.14など)を表示したい時に使います。
printf("%f", 3,14);結果:3,140000
 ※小数点以下はデフォルトで6桁表示されますが桁数を指定することも可能です。
printf("%.桁数f, 数値");
printf("%.2f", 3.14159);結果:3.14

例:少数を表示する

float pi =3.14159;
printf("Pi is approximately %f\n", pi);

結果:Pi is approximately 3.141590(小数点以下6桁まで表示されます)

float型(フロート)

float型の変数には、小数点が含まれる数(実数)を保存することができます。ここでは、3.14159の数値を使用することが出来ています。
またint型と同様、4バイト(32ビット)のメモリを使用します。

3.%c文字(1文字)
1文字(アルファベットや数字、記号など)を表示したい時に使います。
printf("%c", 'A');結果:A

4.%s文字列(複数の文字)
複数の文字からなる言葉や文章を表示したいときに使います。
printf("%s", "Hello");結果:Hello

char letter ='A';
char name[] ="Arice";
printf("Letter: %c, Name: %s\n", letter, name);

結果:Letter: A, Name: Alice

char(キャラ)

・1文字を保存するためのデータ型です。
・メモリのサイズは1バイト(8ビット)で0~255までの数値を扱えます。
※環境によって変化します。

5.%x/%X
16進数(0~9とA~Fを使った数)で表示したい時に使います。
printf("%x, 255);結果:ff
%Xで大文字にすると結果も大文字になります。
printf("%X", 255);結果:FF

変換指定子のポイント

データ型に合わせて使う
%dは整数用
%fは少数用
%cは1文字用
というように、表示したいデータに合わせた指定子を使います。
複数の指定子を一度に使うと・・

int age = 10;
float height = 135.5;
printf("Age: %d, Height: %.1f\n", age, height);

結果:Age: 10, Height: 135.5

まとめ

変換指定子を使うと、プログラムの中で数や文字を簡単に表示できます。決まられた指定子を使って、綺麗に画面に出したいものを表示できるので、とて便利なので、積極的に使っていきたいと思います。

0
0
2

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?