コンパイラ(compiler)とは、プログラミング言語で書かれたプログラムを、コンピュータが直接実行できる形式のプログラムに変換するソフトウェアのことです。
プログラミング言語によって書かれたプログラムをソースコード(原始コード)と呼び、変換後のプログラムをオブジェクトコード(目的コード)と呼びます。また、コンパイラによって変換することをコンパイルするといいます(一部の開発環境ではビルドするともいいます)。
コンパイルを必要とする言語をコンパイラ言語と呼びます。これに対して、コンパイルを必要とせず、ソースコードを逐次解釈しながら実行するタイプのプログラミング言語をインタプリタ(interpreter)言語といいます。一般的にコンパイル言語で書かれたプログラムの方が高速に動作します。
C言語はコンパイラ言語です。C言語で書かれたソースコードはコンパイルしなければ、プログラムを実行することはできません。C言語を学習するには、Cコンパイラが必要です。