C言語②(2025/04/23)

【文字列の表示】
’’文字の場合(文字リテラル)
””文字列の場合(文字列リテラル)

【エスケープシーケンス】
・・・文字表示の場合の特殊な動作を表す制御文字コード
\n:改行(次の行に移る)
\0:NULL文字
\b:バックスペース
\t:TAB(スペース4文字~8文字分をあける)
\r:復帰(行頭に戻る)
\r\n:(CRLF)(LF:ラインフィード+CR:キャリッジリターン)

【今日のコード①】

#include<stdio.h>

int main(void)
{
printf(” %d歳!”,45);
return 0;
}

””で囲んでいる中身は文字列だが、数値を含めて表示する例。
%d(出力変換指定子)の”d”はDecimal(10進数)を表す。
そのあとに記載した数値(今回は45)が%dの部分に表示される。
%d:整数(10進数)
%f:実数(小数点以下を含む数値)
%c:文字(’’で囲まれた半角文字1つ)
%s:文字列(””で囲まれた複数文字)
※出力変換指定子と、渡すデータのフォーマットは一致させること。違う場合はエラーになる。
(例えば、%fなら、10.123、など。)

【printfとputs】
printf: フォーマット指定子を使って出力を細かく制御できます。例えば、数値や変数を文字列に埋め込むことが可能です。printf(“Hello, %s! You are %d years old.\n”, “World”, 25);

puts: 文字列を簡単に表示するための関数で、文字列の末尾に自動的に改行を追加します。puts(“Hello, World!”);

違いのポイント:
putsはシンプルで、改行が自動的に追加されます。
printfは柔軟で多機能ですが、フォーマット指定が必要です。
これらは、UIとして使われる、というよりは、デバッグ用メッセージやパラメーターの確認、などに多用される。

【今日のコード②】
#include<stdio.h>

int main(void)
{
printf(” %d歳!でも%sは%d歳!!”,45,”心”,18);
return 0;
}
・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・

上の例では、一つ目の%dに「45」、%sに「心」、二つ目の%dに「18」が、代わりに表示される。
また、実際には数値の代わりに「変数」を使って、例えばスコアの表示、などに使うことが多い。

【変数】
…数値を記憶するメモリに名前をつけて管理する方法

コンピュータのメモリとは、横1列に膨大に並べられたロッカーのような構造です。
ロッカーの端っこから、1つ1つに番号がつけられています。
そして、コンピュータで扱われる数値は、そのロッカーのどこかに入っています。

普通ならば、そのロッカーの番号を元に、数値を入れたり出したりするのですが、
毎回毎回、長ったらしい番号をつかっていては面倒なことこの上ありません。
皆さんも、7桁の社員番号でロッカーを区別したくはないだろうと思います。

そこで、それぞれのロッカーに、名前をつけておくことにします。
こうすれば、名前を見ることで、それが何のためのロッカーなのかすぐにわかり、
また、扱いもとても簡単になると言うわけなのです。
苦しんで覚えるC言語 5章1節より引用)

●変数の宣言
int a; ⇒整数(integer)が入る a という名前の変数を宣言。

int:変数の”型”
a:変数の名前(変数名)…英小文字で始める。
a = 10; などとして数値を代入することができる。
また、int a, b; などとして同じ型の変数を一度に宣言することも可能。
さらに、宣言と同時に代入もできる。
int a = 10, b = 2;
【鉄則】
変数は1文字目を小文字(数字と、予約語はそもそも使えない)
関数は1文字目を大文字にする(後述)
(そうしないと変数か関数かが見分けがつかなくなる)

なお、複数の単語を組み合わせて名前を作る場合は2単語目以降の頭文字を大文字にするとわかりやすい。変数名は、名前から内容がわかるものにすること。あと、英単語を間違えないこと(笑)
なお、関数内では記載した順(上から順に)処理が実行されていく。

【本日使ったコード③】
#include<stdio.h>

int main(void)
{
int age1 = 45 , age2 = 18;
printf(” %d歳!でも%sは%d歳!!”, age1,”心”, age2);
return 0;
}
・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・
int age1 = 45 ,age2 = 18;
…これは、”age1″と”age2”という”int型”の変数に”45”と”18”をそれぞれ代入するという意味。
printf内で、この変数を使って数値を表示(参照)している。

次回は2週間先・・・!?

コメント

タイトルとURLをコピーしました