変数の使い方
今までの記事では変数(箱)の作り方と、中身の入れ方(代入)についてお話をしてきました。
今回は、そんな変数の使い方を見ていきたいと思います。
変数を作ることを「変数を宣言する」といいます。
以下は変数aとcを今から使うよと宣言して、値を代入(中身を入れる)しているコードです。
ちなみに「コード」とはC言語で書いたもののことを言います。
ですが、このままでは箱はあるけど何も活かされていません。
これではせっかく作った箱が無駄になります。
なので、今回は箱の中身を画面に表示するプログラムを作っていきたいと思います。
以下の例では変数aに代入をした結果をそれぞれprintfで画面に表示するプログラムです。
コンパイル(翻訳)すると以下の結果になります。
改行「\n」を忘れてしまったので、詰まって表示されていますね(;'∀')
次回はこの黒い画面から入力できるプログラムを作っていきます。
定数と変数
C言語に関わらず、プログラム言語では「定数」と「変数」という言葉が出てきます。
定数とは定まっている数の事です。
前回のprintfの例でお話しすると、「%d」に置き換わる「3」が定数ということになります。
もっと言うと、プログラムの中に数字や小数、文字や文字列を直接書いたものはすべて定数です。
プログラムが動いても常に変わることのないものが定数だと思ってください。
逆に、変数とはプログラムが動くたびに代わる可能性があるもののことを言います。
色々な教科書で、変数はよく箱のイメージとして出てきます。
なので、例にならってここでも箱のイメージを使います。
これをC言語で表現すると以下のようになります。
変数aに10を入れている「a=10」という箇所がありますが、このように変数に値(データ)を入れることを代入と言います。
今回の例では、変数aに10を代入したことになります。
また、変数(箱)を作る時に、以下のように同時に代入を行うこともできます。
今回新たに「int」「float」「char」というものが出てきましたが、これらはデータ型と呼ばれるものになります。
変数の名前の横にどんなデータ型が書いてあるかによって、変数(箱)に入れられるデータの種類が変わります。
次回はデータ型について書いていきます。
printf
今日はprintfについて詳しく見ていきます。
printfとは、
print ⇒画面に印刷(表示)
f ⇒フォーマット
の略です。
つまり、文字は文字、数字は数字といった具合に、画面に表示するときに書式を指定することができます。
以下のように複数置き換えることもできますし、文字や小数も置き換えることができます。
ただし、この「%」から始まる書式には注意が必要です。
扱うデータによって「%」の使い方が変わります。
また、以下のように、計算結果を出すこともできます。
次回は変数について書いていきます。
C言語学んだほうがいい5つの理由
今からプログラム言語を学びたいという方も多いと思いますが、プログラム言語が多すぎて何から学べばいいのか分からない方が多いと思います。
今回はC言語を学んておいた方がいい理由を書いていきます。
理由1
言語の仕様が安定している。
C言語はアップデートされている割に言語の仕様変更があまりありません。
つまり一度覚えると、アップデートされる度に学び直す項目があまりありません。
理由2
40年ほどたくさんの方に学ばれてきた実績がある。
プログラム言語の基礎として長年学ばれてきた実績があります。
理由3
ポインターの概念がある。
ポインターだけの本もあるぐらいです。
実は他の言語にも参照渡しというポインターの考え方がでてきます。
C言語のポインターを理解していないと、細かく意味を理解することができません。
また、最近はポインターの概念を知らないプログラマーも増えてきたので、知ってるだけで重宝されます。
理由4
プログラム言語以外の知識も付く。
C言語を勉強すると、OSの仕組みを知ることができます。
これを知っていると、どのプログラム言語でも活用することができます。
なかなかそこまで学べることってないですからね(^_^;)
理由5
他のプログラム言語はC言語で作られていることが多い。
有名どころだとJAVAがありますが、あれらもC言語から作られています。
しかも、書き方もC言語に似ています。
つまり、C言語を学んでおくとスムーズに他の言語に移ることができるわけです。
ここまで長々と書いていきましたが、最初にC言語を学んでおくと良いことが多いです。
最初のプログラム②
それでは、前回の記事で入力したプログラムの解説をしていきます。
以下が前回入力したプログラムです。
まずは以下の赤枠から見ていきます。
これはprintf(プリントエフ)と呼ばれる命令文です。
命令文とはコンピューターの画面に文字を表示してほしいとか、ネットを見せてほしいとか、コンピューターにやってほしいことを書いたものです。
printfはダブルクォーテーションの中に書かれている文字を画面に出してほしいという命令文です。
「\n」はエスケープシーケンスと呼ばれる特殊な文字で、これは改行を意味します。
エンターキーを押したときと同じ役割をします。
エスケープシーケンスについては後日改めてご説明しますので、今はこんなものなんだなと思ってください。
printfはフォーマット付き文字を画面にプリント(表示)してという意味です。
ちなみに実行結果として、printfの文字がそのまま表示されていますね。
次に、一番上に入力したものですが、
これはインクルード文と呼んだりします。
今回の例では「stdio.h」をインクルード(読み込み)しています。
これは、printfを使うために必要な辞書のようなものだと思ってください。
C言語は辞書が無いとprintfの意味を理解できません。
なので、辞書を最初に読み込んで、printfの意味を理解させます。
次にint main(void)のところですね。
これは詳しく説明すると難しくなってしまうので、
今は「この場所からプログラムが始まる」と覚えてください。
「return 0」ですが、これも説明すると難しくなるので、今は必ず入力するものだと思ってください。
「;」セミコロンは命令文の終わりに必ずつけます。
日本語で言うところの句読点の役割を表しています。
これからたくさんのプログラムを書いていきますが、基本的に以下の赤枠の中に命令文を書いてきます。
ですので、これが基本の形と覚えていただければと思います。
次回はprintf(プリントエフ)の中身を詳しく見ていきます。
最初のプログラム①
いよいよプログラムを書いていきましょう!
と意気込む前に、まずはテキストエディターを入れておきましょう。
これを入れるとカラフルに色分けしてくれるので見やすくなります。
私はメリーというテキストエディタを使っています。
https://forest.watch.impress.co.jp/library/software/mery/
それから、パソコンの拡張子は見えるようにしておいてください。
拡張子の表示方法は以下のリンクを参考にしてください。
それで、実際にプログラムを作っていきましょう。
まずはテキストエディタを開いて、以下のコードを入力します。
プログラムは自分で入力した方が早く覚えられるので、あえて画像としてコードを載せています。
入力したら、Cドライブの中のworkフォルダーに保存します。
保存したらコマンドプロンプトを開いて、以下のコマンドを入力します。
「cd c:\work」 ⇒作業フォルダーをworkに変更します。
「bcc32c test.cpp」 ⇒「test.cpp」をコンパイル(翻訳)します。
「test.exe」 ⇒翻訳した結果を表示します。
「test.cpp」を機械の言葉に翻訳した結果が表示された。
ここまでが、基本の流れになります。
①プログラム作成
③実行(.exeを実行する)
「test.cpp」の拡張子「.cpp」はC言語の次に出たC++言語の拡張子です。
本来、C言語の拡張子は「.c」なのですが、ここでは「.cpp」で統一します。
また、「test.exe」の拡張子「.exe」は「実行ファイル」や「エグゼファイル」と呼ばれたりします。
C言語では、コンパイル(翻訳)して「.exe」を作成します。
「.exe」ファイルを動かすとプログラムが動きます。
エクセルのアイコンをクリックするとエクセルが起動すると思いますが、簡単に説明すると、あれは「excel.exe」のショートカットをダブルクリックして動いているものだと思ってください。
次回は今回入力したプログラムの説明をします。