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# - Gegevenstypen

De variabelen in C# zijn onderverdeeld in de volgende typen −

  • Waardetypen
  • Referentietypen
  • Aanwijzertypen

Waardetype

Waardetypevariabelen kunnen direct een waarde krijgen. Ze zijn afgeleid van de klasse System.ValueType .

De waardetypen bevatten direct gegevens. Enkele voorbeelden zijn int, char en float , waarin respectievelijk getallen, alfabetten en getallen met drijvende komma worden opgeslagen. Wanneer u een int . declareert type, wijst het systeem geheugen toe om de waarde op te slaan.

De volgende tabel bevat de beschikbare waardetypen in C# 2010 −

Type Vertegenwoordigt Bereik Standaardwaarde
bool Booleaanse waarde Waar of niet waar Onwaar
byte 8-bits geheel getal zonder teken 0 tot 255 0
char 16-bits Unicode-teken U +0000 tot U +ffff '\0'
decimaal 128-bit nauwkeurige decimale waarden met 28-29 significante cijfers (-7,9 x 10 28 tot 7,9 x 10 28 ) / 10 0 tot 28 0.0M
dubbel 64-bits dubbele-precisie drijvende-kommatype (+/-)5,0 x 10 -324 tot (+/-) 1,7 x 10 308 0.0D
drijvend 32-bits single-precision floating point type -3,4 x 10 38 tot + 3,4 x 10 38 0.0F
int 32-bits geheel getal met teken -2.147.483.648 tot 2.147.483.647 0
lang 64-bits geheel getal met teken -9.223.372.036.854.775.808 tot 9.223.372.036.854.775.807 0L
sbyte 8-bits geheel getal met teken -128 tot 127 0
kort 16-bits geheel getal met teken -32.768 tot 32.767 0
uint 32-bits integer type zonder teken 0 tot 4.294.967.295 0
ulong 64-bits integer type zonder teken 0 tot 18.446.744.073.709.551.615 0
ushort 16-bits integer type zonder teken 0 tot 65.535 0

Om de exacte grootte van een type of een variabele op een bepaald platform te krijgen, kunt u de sizeof gebruiken methode. De uitdrukking sizeof(type) geeft de opslaggrootte van het object of typt in bytes. Hieronder volgt een voorbeeld om de grootte van int . te krijgen typ op elke machine −

Live demo
using System;

namespace DataTypeApplication {
   class Program {
      static void Main(string[] args) {
         Console.WriteLine("Size of int: {0}", sizeof(int));
         Console.ReadLine();
      }
   }
}

Wanneer de bovenstaande code wordt gecompileerd en uitgevoerd, levert dit het volgende resultaat op −

Size of int: 4

Referentietype

De referentietypes bevatten niet de feitelijke gegevens die in een variabele zijn opgeslagen, maar ze bevatten een verwijzing naar de variabelen.

Met andere woorden, ze verwijzen naar een geheugenlocatie. Met behulp van meerdere variabelen kunnen de referentietypes verwijzen naar een geheugenlocatie. Als de gegevens in de geheugenlocatie worden gewijzigd door een van de variabelen, geeft de andere variabele deze waardeverandering automatisch weer. Voorbeeld van ingebouwd referentietypes zijn:object , dynamisch, en string .

Objecttype

Het Objecttype is de ultieme basisklasse voor alle gegevenstypen in C# Common Type System (CTS). Object is een alias voor de klasse System.Object. Aan de objecttypen kunnen waarden worden toegewezen van andere typen, waardetypen, referentietypen, vooraf gedefinieerde of door de gebruiker gedefinieerde typen. Voordat waarden worden toegewezen, moet echter typeconversie worden uitgevoerd.

Wanneer een waardetype wordt geconverteerd naar een objecttype, wordt dit boksen genoemd en aan de andere kant, wanneer een objecttype wordt geconverteerd naar een waardetype, wordt dit unboxing genoemd. .

object obj;
obj = 100; // this is boxing

Dynamisch type

U kunt elk type waarde opslaan in de dynamische gegevenstypevariabele. Typecontrole voor dit soort variabelen vindt plaats tijdens runtime.

Syntaxis voor het declareren van een dynamisch type is −

dynamic <variable_name> = value;

Bijvoorbeeld,

dynamic d = 20;

Dynamische typen zijn vergelijkbaar met objecttypen, behalve dat typecontrole voor objecttypevariabelen plaatsvindt tijdens het compileren, terwijl dat voor de dynamische typevariabelen tijdens runtime plaatsvindt.

Snaartype

Het Stringtype stelt u in staat om willekeurige tekenreekswaarden aan een variabele toe te wijzen. Het tekenreekstype is een alias voor de klasse System.String. Het is afgeleid van het objecttype. De waarde voor een tekenreekstype kan worden toegewezen met behulp van tekenreeksletters in twee vormen:aanhalingstekens en @aanhalingstekens.

Bijvoorbeeld,

String str = "Tutorials Point";

Een letterlijke tekenreeks met @quotes ziet er als volgt uit −

@"Tutorials Point";

De door de gebruiker gedefinieerde referentietypen zijn:klasse, interface of gedelegeerde. We zullen deze typen in een later hoofdstuk bespreken.

Aanwijzertype

Aanwijzertypevariabelen slaan het geheugenadres van een ander type op. Pointers in C# hebben dezelfde mogelijkheden als de pointers in C of C++.

Syntaxis voor het declareren van een aanwijzertype is −

type* identifier;

Bijvoorbeeld,

char* cptr;
int* iptr;

We zullen aanwijzertypes bespreken in het hoofdstuk 'Onveilige codes'.


C Taal

  1. De 4 primaire typen sleufschijven voor bevestigingsmiddelen
  2. Verschillende thermokoppeltypes en -bereiken met vergelijking
  3. C#-variabelen en (primitieve) gegevenstypen
  4. C# Type conversie
  5. C++-gegevenstypen
  6. C Gegevenstypen
  7. Python-gegevenstypen
  8. Python Type Conversie en Type Casting
  9. Java-gegevenstypen (primitief)
  10. Java Type Casting
  11. C++ Char-gegevenstype met voorbeelden