Vad är en Char Array?
En mängd karaktärer är vanligtvis känd på de flesta datorprogrammeringsspråk som en char array. Detta beror främst på att "char" är nyckelordet på språk som C som används för att förklara en variabel av datatypen för skalartecken. En char array är en sekvens av tecken som är inspelade i minnet i en lång rad med på varandra följande adresser som snabbt kan nås genom att använda indexet för ett element i arrayen. Liksom många matriser av skaladatatyper är fördelarna med att använda en char-array att möjliggöra snabb slumpmässig åtkomst och för att ersätta värden på godtyckliga positioner i arrayen.
I objektorienterade programmeringsspråk som Java® är det viktigt att förstå att en char-array representerar en sekvens av skalvärden och inte klasser eller objekt. En skaladatatyp är en som bara lagras som en bit av datum, som ett heltal. Detta är i motsats till en rad teckenobjekt, som innehåller metoder och eventuellt andra stödjande variabler som serialisering eller synkroniseringsinformation.
Ett tecken på de flesta datorspråk är en datatyp som är utformad för att innehålla en enda bokstav eller symbol eftersom den representeras av den teckenkodning som används av programmet eller operativsystemet. Av denna anledning, utom i starkt standardiserade språk, kan den faktiska storleken på ett tecken i minnet vara annorlunda för varje system. Denna information kan göra en skillnad när man försöker korsa en koluppsättning med hjälp av pekarearmetik, där istället för att använda enkla inkrement- och minskningsoperatörer, måste pekarberäkningar använda den systemdefinierade teckenstorleken. Lita på en matris där teckenstorleken är 1 byte eller 2 byte kan orsaka oförutsägbart beteende och fel om programmet körs på ett annat system där ett tecken kan definieras annorlunda.
Inom vissa program kan en rad tecken användas som grund för implementering av en strängklass eller avancerad strängdatatyp. I C-programmeringsspråket hanteras strängar faktiskt på ett sätt som mycket liknar en koluppsättning där en följd av tecken bildar strängen, informerar programmet om att strängen har slutat med ett nolltecken. En anpassad strängklass kan utformas för att emulera detta beteende med en matris.
Andra användningar för en koluppsättning inkluderar utförande av komprimeringstyper eller kodning som inte nödvändigtvis är baserad på oktetter utan på mänskliga läsbara tecken. Arrayen kan också tjäna som en typ av buffert för behandling av längre textblock som finns i en fysisk mediefil, eller en som läses in från ett nätverksuttag. De flesta av de funktioner som en char-array används för innebär textinmatning och -utmatning helt enkelt för att storleken på ett skalartecken är oförutsägbart från ett system och kompilator till ett annat på många språk och sålunda inte kan lita på att hålla heltalsvärden utöver ett visst intervall.