「static cast」の版間の差分

提供: C++入門
移動: 案内検索
(ページの作成:「C++のキャストで使われるstatic_cast(静的なキャスト)は、一般的なキャストを行います。intからlong、intからdouble、列挙...」)
(相違点なし)

2014年1月2日 (木) 21:10時点における版

C++のキャストで使われるstatic_cast(静的なキャスト)は、一般的なキャストを行います。intからlong、intからdouble、列挙型からintなどの型変換です。 int*からchar*などのポインタ型の変換は行えません。ポインタ同士のキャストには、reinterpret_castを使用します。

読み方

static_cast
こんすと きゃすと

概要

int	i	= 0;
double	d	= 1.2;
i	= static_cast<int>(d);

コンパイル時に評価され、キャストできない場合は、コンパイルエラーになります。

static_castの使用例

ソースコード static_cast.cc

#include <iostream>
#include <cstdlib>
using namespace std;
 
int
main (int argc, char *argv[])
{
 
        int     i = 100;
 
        long    l = static_cast <long> (i);
 
        exit (EXIT_SUCCESS);
}

コンパイル

g++  static_cast.cc -o static_cast

実行例

特に出力はありません。

% ./static_cast

関連項目