C++における標準Cライブラリ
出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2021/10/02 01:28 UTC 版)
「標準Cライブラリ」の記事における「C++における標準Cライブラリ」の解説
C++03の標準C++ライブラリでは、C95相当の標準Cライブラリを包含している。更には、C95では任意実装であったfloat型やdouble型の数学関数も常にサポートされる。C++11ではC99相当の標準Cライブラリと uchar.h を包含している。 標準Cライブラリにおけるヘッダ xxx.h は、C++では cxxx というヘッダにマッピングされる。各識別子は std 名前空間内で宣言される。また、標準Cライブラリとの互換性を持たせるため、xxx.h 形式のヘッダも使用することができ、std 名前空間内で宣言された識別子はusing指令によってグローバル名前空間に引き出される。 C++固有の事情から、一部の関数についてはC言語との互換性が低下している。具体的にはmemchr関数やstrstr関数等がそれにあたる。すなわち、引数として渡されるポインタが指す型がconst修飾されているか否かにより、返却値の型もそれに合わせて変更されるように多重定義されている。 Cの場合 char *strchr(const char*, int); C++の場合 const char *strchr(const char*, int);char *strchr(char*, int);
※この「C++における標準Cライブラリ」の解説は、「標準Cライブラリ」の解説の一部です。
「C++における標準Cライブラリ」を含む「標準Cライブラリ」の記事については、「標準Cライブラリ」の概要を参照ください。
- C における標準Cライブラリのページへのリンク