C#
 Computer >> コンピューター >  >> プログラミング >> C#

C#での暗黙的型変換と明示的型変換の違いは何ですか?


以下は、暗黙的型変換と明示的型変換の違いです-

暗黙の型変換

これらの変換は、C#によってタイプセーフな方法で実行されます。

概念を理解するために、暗黙的にintをlongに変換しましょう。

int val1 = 11000;
int val2 = 35600;
long sum;

sum = val1 + val2;

上記では、2つの整数変数があり、それをlong変数に合計しても、エラーは表示されません。コンパイラはそれ自体で暗黙的な変換を行うためです。

今すぐ値を印刷しましょう。

using System;
using System.IO;

namespace Demo {
   class Program {
      static void Main(string[] args) {
         int val1 =34567;
         int val2 =56743;
         long sum;

         sum = val1 + val2;

         Console.WriteLine("Sum= " + sum);

         Console.ReadLine();
      }
   }
}

明示的な型変換

これらの変換は、ユーザーが事前定義された関数を使用して明示的に実行します。

doubleをintに型キャストする例を見てみましょう-

using System;

namespace Program {
   class Demo {
      static void Main(string[] args) {
         double d = 1234.89;
         int i;

         // cast double to int.
         i = (int)d;
         Console.WriteLine(i);
         Console.ReadKey();
      }
   }
}

  1. C言語での暗黙的および明示的な型変換とは何ですか?

    あるデータ型を別のデータ型に変換することを型変換と呼びます。 暗黙の型変換 明示的な型変換 暗黙の型変換 オペランドのデータ型が異なる場合、コンパイラは暗黙的な型変換を提供します。 これは、小さなデータ型を大きなデータ型に変換することにより、コンパイラによって自動的に実行されます。 int i,x; float f; double d; long int l; ここで、上記の式は最終的に「double」値に評価されます。 例 以下は、暗黙的な型変換の例です- int x; for(x=97; x<=122; x++){    printf

  2. const int *、const int * const、およびint const *の違いは何ですか?

    ここでは、整数ポインター、整数定数、および整数定数ポインターに基づくいくつかの異なるタイプの変数宣言を確認します。 それらを決定するために、時計回り/スパイラルルールを使用します。用語を話し合うことで、ルールも理解できます。 const int * 。これは、これがポインター型変数であることをコンパイラーに通知するために使用され、定数intのアドレスを格納できます。時計のルールはこのように言っています- もう1つはconstint*constです。これは、これが1つの定数ポインター変数であり、別の定数整数のアドレスを格納できることを示すために使用されます。時計のルールを適用する