C プリプロセッサ 新しいページはコチラ

提供: yonewiki
移動: 案内, 検索
(プリプロセッサ)
 
1行: 1行:
 +
[[C PlusPlus#Cにもあった技術|C++]]へ戻る
 +
 +
 
※このページではC言語にも存在していたという意味で記事タイトルがC プリプロセッサになっていますが、<br />
 
※このページではC言語にも存在していたという意味で記事タイトルがC プリプロセッサになっていますが、<br />
 
[[C PlusPlus|C++]]でも同様です。[[C PlusPlus|C++]]だけの機能がある場合は明記します。<br />
 
[[C PlusPlus|C++]]でも同様です。[[C PlusPlus|C++]]だけの機能がある場合は明記します。<br />
 
<br />
 
<br />
 
== '''プリプロセッサ''' ==
 
== '''プリプロセッサ''' ==
 +
 
プリプロセスと呼ばれる機械語翻訳処理(コンパイルやリンク)の前処理と解釈すべき動作があります。英語のpre(プリ)…は日本語で…の前にというような意味ですから、pre-processで処理の前というような直訳にもなりますから、なんとなく前準備のような処理であると認識しておけばよいと思います。このプリプロセスのプログラムで表現する部分をプリプロセッサと呼んでいます。プリプロセッサには各処理系(OS毎にも異なるc言語あるいはC++言語の翻訳処理システムVisuak C++やgcc)によって動作や記述が異なる部分が多く、標準化されているものよりもVisual C++におけるMicrosoft固有のプリプロセッサが圧倒的に多く用意されています。
 
プリプロセスと呼ばれる機械語翻訳処理(コンパイルやリンク)の前処理と解釈すべき動作があります。英語のpre(プリ)…は日本語で…の前にというような意味ですから、pre-processで処理の前というような直訳にもなりますから、なんとなく前準備のような処理であると認識しておけばよいと思います。このプリプロセスのプログラムで表現する部分をプリプロセッサと呼んでいます。プリプロセッサには各処理系(OS毎にも異なるc言語あるいはC++言語の翻訳処理システムVisuak C++やgcc)によって動作や記述が異なる部分が多く、標準化されているものよりもVisual C++におけるMicrosoft固有のプリプロセッサが圧倒的に多く用意されています。
  
15行: 19行:
  
  
実際はコンパリンはMakefileと呼んでいる作成しているプロジェクト(アプリケーションのためのソース一式)から実行ファイルを生成するためのまさにコンパリンをひとまとめにしたファイルによって一気に実行ファイルが生成できるように管理するのが通常です。このコンパリン処理をひとまとめにしたものMakefileを新しく編集したプログラムのファイルの部分だけ実行することをVisual Studioではビルドと呼ぶようになりましたし、Makefileに書かれている内容を全部やりなおす処理をリビルドと呼ぶようになりました。ビルドすれば、そのあとはデバッグなしで実行したりデバッグしたりすることもできるようになります。
+
実際はコンパリンはMakefileと呼んでいる作成しているプロジェクト(アプリケーションのためのソース一式)から実行ファイルを生成するためのまさにコンパリンをひとまとめにしたファイルによって一気に実行ファイルが生成できるように管理するのが通常です。コンパリン処理をひとまとめに記述したMakefileから新しく編集したプログラムのファイルの部分だけ実行することをVisual Studioではビルドと呼ぶようになりましたし、Makefileに書かれている内容を全部やりなおす処理をリビルドと呼ぶようになりました。ビルドすれば、そのあとはデバッグなしで実行したりデバッグしたりすることもできるようになります。デバッグするためのDebugモードのプログラムアプリとRelease用のアプリのMakefileを個別に準備して、より強固なデバッグシステムを用意し、実際に使うアプリケーションプログラムは余計なものを限りなくそぎ落としたものにする文化もVisual Studioと呼ばれるような開発環境で普通にやれるようになったのも素晴らしいことです。実際のコンパイル処理やリンク処理の内容は非常に複雑な説明を必要としますので、そのあたりはVisual Studioの記事側で触れたいと思います。コンパイルとリンクに関する記事はまだ未作成なので、しばらくはよそ様のWebSiteから知識を得ていただければと思います。
  
  
43行: 47行:
  
  
プリプロセッサの概要は以上です。プリプロセッサをいくつかの役割に分けて説明を記述しますので、詳細は個別の項目のページを参照して下さい。ここで説明していることはMicrosoftのMSDNにあるC++言語リファレンスに記載されているプリプロセッサの説明と変わらないので正しく短い説明の記事はMicrosoftの記事を参考にして下さい。ここでは、自分なりに特別にしっておいた方がよさそうなことを独断と偏見で記載しています。好きな方の記事を見て下さい。自分の言葉からだけ得られるもの、そしてイメージを膨らませれた事柄。Microsoftのページで得られるものそれぞれの個性に少しでも差がでれば、自分のやっていることに意味が見いだせることになりますので、自分にとっては喜ばしい限りです。
+
プリプロセッサの概要は以上です。<br />
 +
プリプロセッサをいくつかの役割に分けて説明を記述しますので、詳細は個別の項目のページを参照して下さい。
 +
 
 +
 
 +
ここで説明していることはMicrosoftのMSDNにあるC++言語リファレンスに記載されているプリプロセッサの説明と変わらないので正しく短い説明の記事はMicrosoftの記事を参考にして下さい。ここでは、自分なりに特別にしっておいた方がよさそうなことを独断と偏見で記載しています。好きな方の記事を見て下さい。自分の言葉からだけ得られるもの、そしてイメージを膨らませれた事柄。Microsoftのページで得られるものそれぞれの個性に少しでも差がでれば、自分のやっていることに意味が見いだせることになりますので、自分にとっては喜ばしい限りです。
 +
 
 +
 
 +
[[C PlusPlus#Cにもあった技術|C++]]へ戻る

2017年5月29日 (月) 00:00時点における最新版



個人用ツール
名前空間

変種
操作
案内
ツールボックス