C#のキャスト演算子とは?明示的な型変換の基本をわかりやすく解説
プログラミングにおける型変換(タイプコンバージョン)とは、あるデータ型を別のデータ型に変換することを指します。中でも明示的な変換(明示的キャスト)は、開発者が事前に定義された機能を使って意図的に行う変換であり、この際に必要となるのがキャスト演算子「( )」です。
C#では、double型からint型への変換のように、データ損失が発生する可能性がある変換は自動的に行われません。そのため、開発者が明示的にキャストを記述する必要があります。
double型をint型にキャストするサンプルコード
以下は、double型の値をint型へキャストする具体的な例です。
using System;
namespace Demo {
class Program {
static void Main(string[] args) {
double a = 4563.56;
int x;
x = (int)a;
Console.WriteLine(x);
Console.ReadKey();
}
}
}
キャストのポイント
上記のコードでは、次の行でdouble型の変数 a をint型へ明示的にキャストしています。
x = (int)a;
ここで重要なのは、(int) という部分がキャスト演算子の役割を果たしている点です。double型の値 4563.56 をint型に変換すると、小数点以下は切り捨てられ、結果として 4563 が出力されます。
注意点:データ損失に気をつける
大きなサイズの型(doubleなど)から小さなサイズの型(intなど)への変換では、小数部分が失われるなどのデータ損失が発生する可能性があります。そのためC#では、このような変換を暗黙的に許可せず、必ずキャスト演算子による明示的な指定を求めています。これは、意図しない値の欠落を防ぐための安全機構です。
逆に、int型からdouble型のような小さい型から大きい型への変換(暗黙的な型変換)は、データ損失がないためキャストなしで自動的に行われます。
-
C/C++の型キャストとは?基礎から整数昇格・通常の算術型変換まで解説
型キャスト(型変換)とは、あるデータ型の変数を別のデータ型へ変換する手法のことです。例えば、long型の値を単純なint型の変数に格納したい場合、longをintへキャストすることができます。値をある型から別の型へ明示的に変換するには、キャスト演算子を次の形式で使用します。(型名) 式キャスト演算子の使用例次の例では、キャスト演算子によって整数変数同士の除算が浮動小数点演算として実行されます。#include <stdio.h> main() { int sum = 17, count = 5; double mean; mean = (double) su
-
C#の型キャストとは?暗黙的・明示的な型変換の基本を解説
C#の型キャスト(型変換)とは型キャスト(型変換)とは、あるデータ型の値を別のデータ型へ変換する操作のことです。C#では、主に以下の2つの方法で型変換を行います。暗黙的な型変換(Implicit Conversion)暗黙的な型変換は、C#が自動的に、かつ型安全な形で実行してくれる変換です。たとえば、小さい整数型から大きい整数型への変換(intからlongなど)や、派生クラスから基底クラスへの変換がこれに該当します。プログラマーが特別な記述をする必要はありません。明示的な型変換(Explicit Conversion)明示的な型変換は、開発者がキャスト演算子「( )」などの事前定義された機能を