コンピュータ

C言語

C言語のきほん「スタック」

本ブログでは、これまでに「配列」を扱っている。 配列では、格納したデータに対して、インデックスを指定してアクセスできた。 この「インデックスを指定してアクセスする」以外の方法で、データの追加や削除を行うデータ管理方法のひとつに、「スタック」...
C言語

C言語のきほん「2分探索」

実際のプログラムでは、たくさんのデータの中から目的のデータを見つけ出す処理が行われる。 以前、本ブログでは、「線形探索」をご紹介している。 今回は、「2分探索」をご紹介する。これは、範囲を半分に絞りながら目的となる値を見つける方法である。 ...
C言語

C言語のきほん「列挙型」

列挙型は、自分で定義したキーワード(識別子)を格納するための型である。この型の名前は自由に決めることができるが、enumというキーワードを最初につける必要がある。例えば、「enum Size」とする場合、 enum Size {S,M,L,...
C言語

C言語のきほん「条件付きコンパイル」

プリプロセッサへの#ifdef~#endif命令、または、#ifdef~#else~#endif命令によって、コンパイルする内容を条件分岐させることができる。 #ifdef マクロ名     プログラムコード #endif 上記のようにマク...
C言語

C言語のきほん「関数形式マクロ」

先に本ブログでご紹介したマクロは、特定の文字列を別の文字列に置き換えるものであった。 今回は、「関数形式マクロ」をご紹介しよう。 次のように使用する。 #define MAX(x,y) (x > y ? x : y) このように関数マクロを...
C言語

C言語のきほん「マクロ」

#include命令のほかに、#define命令というものがある。 #define命令を使うことで、プログラムコード中の特定の文字列を、コンパイル前に別の文字列に一括置換できる。 このときに置き換えを行う文字列をマクロという。 今後のプログ...
C言語

C言語のきほん「プリプロセッサの処理」

さて、これまで見てきたように、コンパイラによってプログラムコードがコンパイルされる。 ただ、正確には、コンパイルが行われる前に、プログラムコードを自動編集するプリプロセスという操作が行われる。 この操作を行うプログラムをプリプロセッサと呼ぶ...
C言語

C言語のきほん「グローバル変数の共有」

今回は、グローバル変数を複数のファイルで共有する例をご紹介しよう。 なお、本プログラムは、Windows 11 Home(23H2)上で、 Visual Studio Code(1.91.1)を使用して作成し、gcc (Ubuntu 9.4...
C言語

C言語のきほん「複数のファイルに分ける」

これまで、本ブログでご紹介してきたプログラムコードは、比較的短いものであった。 しかし、大きなプログラムになると、全体の見通しが悪くなるため、複数のファイルに分けて管理するとメリットがある。 この場合、関数の定義を一つのまとまりにして、関数...
C言語

C言語のきほん「ローカル変数」

さて、グローバル変数と同じ名前の変数を、関数の中で宣言してもエラーにはならない。 この場合、ローカル変数が優先される。 プログラムで確認してみよう。 なお、本プログラムは、Windows 11 Home(23H2)上で、 Visual St...