Industriële fabricage
Industrieel internet der dingen | Industriële materialen | Onderhoud en reparatie van apparatuur | Industriële programmering |
home  MfgRobots >> Industriële fabricage >  >> Industrial programming >> C Taal

C# Datatypes: Waarde, Referentie en Pointer Types

C# variabelen vallen in drie categorieën:

  • Value types
  • Reference types
  • Pointer types

Value Types

Bevatten direct data. Afgeleid van System.ValueType. Voorbeelden: int, char, float. Bij declaratie wordt geheugen toegewezen.

TypeRepresenteertBereikDefault
boolBoolean waardeTrue/FalseFalse
byte8-bit unsigned integer0 to 2550
char16-bit Unicode karakterU+0000 to U+FFFF'\0'
decimal128-bit precieze decimaal(±7.9×10²⁸)/10⁰⁻²⁸0.0M
double64-bit double-precision float±5.0×10⁻³²⁴ to ±1.7×10³⁰⁸0.0D
float32-bit single-precision float±3.4×10³⁸0.0F
int32-bit signed integer-2.147B to 2.147B0
long64-bit signed integer-9.22×10¹⁸ to 9.22×10¹⁸0L
sbyte8-bit signed integer-128 to 1270
short16-bit signed integer-32,768 to 32,7670
uint32-bit unsigned integer0 to 4.29B0
ulong64-bit unsigned integer0 to 1.84×10¹⁹0
ushort16-bit unsigned integer0 to 65,5350

Grootte opvragen met sizeof(type):

Console.WriteLine("Size of int: {0}", sizeof(int));  % 4

Reference Types

Bevatten geen data direct, maar een referentie (geheugenadres). Meerdere variabelen kunnen naar dezelfde locatie wijzen. Wijziging via één variabele is zichtbaar voor andere.

Ingebouwde referentie types: object, dynamic, string.

Object Type

Ultieme basisklasse voor alle typen (CTS). Alias voor System.Object. Kan waarden van elk type toewijzen na conversie.

  • Boxing: value type → object type
  • Unboxing: object type → value type
object obj;
obj = 100;  // boxing

Dynamic Type

Kan elke waarde opslaan. Type checking at runtime.

dynamic  = value;
dynamic d = 20;

Verschil met object: type checking bij object = compile time, bij dynamic = runtime.

String Type

Toewijzen van string waarden. Alias voor System.String, afgeleid van object. Twee literal vormaten:

  • Quoted: "Tutorials Point"
  • @Quoted (verbatim): @"Tutorials Point"

Gebruiker-gedefinieerde referentie types: class, interface, delegate (later besproken).

Pointer Types

Opslaan van geheugenadres van ander type. Vergelijkbaar met C/C++ pointers.

type* identifier;
char* cptr;
int* iptr;

Wordt behandeld in hoofdstuk 'Unsafe Codes'.

C Taal

  1. Vier Belangrijke Goot-Aandrijvingstypen voor Bevestigingsmiddelen Uitgelegd
  2. Thermokoppels Uitgelegd: Typen, Bereiken en Prestatievergelijking
  3. C# Variabelen & Primitive Datatypes onder de knie krijgen: Complete gids
  4. C# type conversie: implicit, explicit, Parse en Convert methodes
  5. C++ datatypes begrijpen: fundamentals, modifiers en best practices
  6. C Datatypes Uitgelegd: int, float, char en Meer – Een Complete Gids
  7. C++ Char Datatype: Declaratie, ASCII en Conversie‑Technieken
  8. Python Datatypes onder de knie krijgen: Een praktische gids
  9. Python Type Conversie & Casting onder de knie krijgen: Een uitgebreide gids
  10. Java primitieve datatypes: complete gids met voorbeelden
  11. Java Type Casting: Van widening tot narrowing en verder