フリースタンディング環境
出典: フリー百科事典『ウィキペディア(Wikipedia)』
フリースタンディング環境(— かんきょう)はC言語およびC++の実行環境の一種である。
オペレーティングシステムの制御を受けることなくプログラムが実行されるシステムを指す。対義語はホスト環境であり、オペレーティングシステムの制御下でプログラムが実行される環境を指す。μITRONはオペレーティングシステムの一種であるが、現実的にはフリースタンディング環境に分類される場合が多い。
フリースタンディング環境では言語仕様に以下の制限を受ける。
- エントリーポイントはmain関数である必要はなく、関数の型および名称は処理系定義となる。
- 標準ライブラリの大部分がサポートされない。フリースタンディング環境でもサポートされる標準ライブラリを以下に挙げる。
- C90の場合、<float.h>、<limits.h>、<stdarg.h>、および<stddef.h>
- C95の場合、C90の標準ライブラリおよび<iso646.h>
- C99の場合、C95の標準ライブラリおよび<stdbool.h>、<stdint.h>
- C++の場合、<exception>、<limits>、<cstdarg>、<cstddef>、<cstdlib>(abort、atexit、およびexitのみ)、<new>、および<typeinfo>
通常、特に実行環境を指定しない場合は、ホスト環境を対象にしていることが多いが、組み込みシステムではフリースタンディング環境を対象にすることの方が多い。