- 公開日:2017-10-4 最終更新日:2017-10-2
- プロスタTOP / プログラミング初心者向け技術系ノウハウ・まとめ

目次
- 0.1 第11回 プログラムを実行してみよう
- 0.2 第12回 コンパイルエラーの読み方を知ろう
- 0.3 第13回 プロトタイプを活用しよう
- 0.4 第14回 基本的なデータ型を知ろう
- 0.5 第15回 配列の表現方法と文字列表現方法を学ぼう
- 0.6 第16回 変数は宣言時に初期化することができます
- 0.7 第17回 C言語の演算子について学ぼう(その1)
- 0.8 第18回 C言語の演算子について学ぼう(その2)
- 1 C言語プログラムを実行する手順
- 2 コンパイルエラーの読み方
- 3 プロトタイプを活用しよう
- 4 データ型の基本はchar型、int型、double型
- 5 配列の表現方法と文字列表現方法
- 6 変数宣言時の初期化
- 7 C言語で使用できる演算子
- 8 C言語超入門の第19回まとめ
今回のC言語超入門は、第11回から第18回までに学んだ以下の項目について、振り返りたいと思います。
第11回 プログラムを実行してみよう
第12回 コンパイルエラーの読み方を知ろう
第13回 プロトタイプを活用しよう
第14回 基本的なデータ型を知ろう
第15回 配列の表現方法と文字列表現方法を学ぼう
第16回 変数は宣言時に初期化することができます
第17回 C言語の演算子について学ぼう(その1)
第18回 C言語の演算子について学ぼう(その2)
それでは一緒に各回のポイントを振り返っていきましょう。
C言語プログラムを実行する手順
第11回のC言語超入門では、C言語プログラムを実行するまでの3つの手順を学びましたね。
1. C言語プログラムを作成
2. コンパイルして機械語に変換(C言語→機械語)
3. 標準ライブラリとリンクして実行ファイルを作成
ポイントは、「コンパイル」という処理によって、「C言語」からコンピューターが理解する「機械語」に変換されること、および「リンク」によって実際に実行することができるプログラムファイルが生成される、ということです。
なお、開発環境によっては、「2.コンパイル」と「3.リンク」が同時に実行されるため、一見すると「コンパイル」しか実行していないように見える場合もありますが、内部的には「コンパイル」→「リンク」というプロセスを踏んでいますので、知識として抑えておいてください。
コンパイルエラーの読み方
第12回のC言語超入門では、コンパイルを実施したとき、プログラムの記述に誤りがあったときにコンパイラーが出力するエラーメッセージの読み方について学びました。
コンパイラーが出力するエラーメッセージを読む際には、ちょっとしたコツがあります。
1. コンパイラーの指摘は文法誤りのみであり、実行結果の正しさとは無関係
2. エラーとして表示される行番号にエラーがあるとは限らない
この2つのポイントを抑えておくだけでも、プログラミング効率が向上すると思います。
プログラミングの上達のコツは、「エラーが出たら修正する」を何度も何度も繰り返して経験を積んでいくこと。
コンパイルエラーが出たときは、ガッカリするのではなく、上達するチャンスです。
プロトタイプを活用しよう
第13回のC言語超入門では、C言語のプロトタイプ宣言について学びました。
プロトタイプ宣言とは、関数のインターフェース情報(関数名や引数の数、引数のデータ型など)を定義したものを言います。
プロトタイプ宣言のポイントは、
1. コンパイラーが関数の引数チェックのために使用する
2. 関数を自作したときは、関数定義の1行目を加工して、プログラムの先頭に書く
3. printf関数のプロトタイプは、stdio.hというファイルに定義されている
の3つですが、現時点で覚えていただきたいことは、3つ目の「printf関数のプロトタイプは、stdio.hというファイルに定義されている」です。
まずは、必ずプログラムの先頭に以下のとおり記述するようにしましょう。
1 |
#include |
データ型の基本はchar型、int型、double型
第14回のC言語超入門では、C言語の主要なデータ型について学びました。
もしデータ型を知らずにプログラミングをしてしまいますと、プログラムが思ったとおりに動作せず頭を悩ませることになりますので、しっかりとマスターすることが大切です。
ですが、データ型の種類にはたくさんあり、一気に全てを覚えようとすると混乱してしまいかねませんから、まずはchar型、int型、double型の3つのデータ型から学んでいくことをお勧めします。
なお、char型、int型、double型のデータ表現範囲は次のとおりです。
char ・・・ 文字型 / -128〜127
int ・・・ 整数型 / -2,147,483,648〜2,147,483,647
double ・・・ 倍精度浮動小数型 / 2.22507e-308 〜 1.79769e+308
注)
データ型の表現範囲は、開発環境によって異なります。
例えば、16bitのCPUを使った開発環境では、int(整数型)の表現範囲が、
-32,768 ~ 32,767
になることもあります。
配列の表現方法と文字列表現方法
第15回のC言語超入門では、配列(同じデータ型を集めたもの)と文字列の使用方法について学びました。
int型の変数 hairetsu を10個集めた配列は、
1 |
int hairetsu[10]; |
と記述し、以下のように使用できます。
1 2 3 4 |
hairetsu[0] = 100; hairetsu[1] = 200; : hairetsu[9] = 1000; |
C言語には、文字列を扱うデータ型が無いため、char型変数の配列を使って、次のように文字列を扱います。
1 2 |
char moji[10]; sprintf(moji, "Windows"); |
ポイントは、
1. 配列の要素番号は0から始まる
2. 文字列はchar型配列を使う
3. 配列サイズはプログラマーが意識する
です。
特に配列サイズに気を付けてプログラミングをしませんと、プログラム実行時にプログラムを破壊してしまう場合もありますから、十分にご注意ください。
変数宣言時の初期化
第16回のC言語超入門では、変数の初期値設定について学びました。
変数を宣言した時点では、変数の値は保証されていないため、プログラムが意図しない動作をしないよう、変数の宣言時に変数の初期化をしてから使用するようにしましょう。
変数を宣言するときに初期化をする方法の一例を以下に挙げます。
1 2 3 |
int a = 10; int b[] = {1, 2, 3, 4, 5}; char c[] = "Windows"; |
C言語で使用できる演算子
第16回、第17回C言語超入門では、C言語における演算子(演算を表す記号)の使い方について学びました。
C言語でプログラミングする上で抑えておきたい演算子は、算術演算子、関係演算子、論理演算子、インクリメント演算子、デクリメント演算子の5つです。
各演算子の使用例は以下のとおりです。
*算術演算子
a + b 足し算(加算)
a – b 引き算(減算)
a * b かけ算(乗算)
a / b 割り算(除算)
a % b あまり
関係演算子
a < b aはbより小さい
a <= b aはbより小さいか等しい a == b aとbは等しい a >= b aはbより大きいか等しい
a > b aはbより大きい
a != b aはbと等しくない
論理演算子
a && b aかつb(論理積)
a || b aまたはb(論理和)
!a aではない(否定)
インクリメント演算子、デクリメント演算子
a++ または ++a インクリメント(+1加算)
b– または –b デクリメント(-1減算)
C言語超入門の第19回まとめ
さて、C言語超入門の第11回から第19回までのポイントを絞って振り返ってみましたが、いま、どのように感じているでしょうか。
もし、「この部分は少し記憶が曖昧だな」、「この処理は少しニガテだな」と感じるところがありましたら、この機会に改めて学習をしてみてくださいね。
ステップ・バイ・ステップ。焦らず一歩ずつ進んでいきましょう。