在 C# 中,变量分为以下几种类型:
值类型(Value types) int、char、float
引用类型(Reference types)
object、dynamic、string、array
对象类型变量的类型检查是在编译时发生的,而动态类型变量的类型检查是在运行时发生的。
装箱:值类型转换为对象类型, 拆箱:对象类型转换为值类型
指针类型(Pointer types)
指针类型变量存储另一种类型的内存地址。C# 中的指针与 C 或 C++ 中的指针有相同的功能。
实例描述int* p
p
是指向整数的指针。double* p
p
是指向双精度数的指针。float* p
p
是指向浮点数的指针。int** p
p
是指向整数的指针的指针。int*[] p
p
是指向整数的指针的一维数组。char* p
p
是指向字符的指针。void* p
p
是指向未知类型的指针。
声明多个指针时,星号 * 仅与基础类型一起写入;而不是用作每个指针名称的前缀。 例如:
int* p1, p2, p3; // 正确
int *p1, *p2, *p3; // 错误
参考:
https://www.runoob.com/csharp/csharp-data-types.html