Not
Åtkomst till denna sida kräver auktorisation. Du kan prova att logga in eller byta katalog.
Åtkomst till denna sida kräver auktorisation. Du kan prova att byta katalog.
Du kan initiera en matris med tecken (eller breda tecken) med en strängliteral (eller bred strängliteral). Till exempel:
char code[ ] = "abc";
initieras code som en matris med fyra element med tecken. Det fjärde elementet är null-tecknet, som avslutar alla strängliteraler.
En identifierarlista kan bara vara så länge som antalet identifierare som ska initieras. Om du anger en matrisstorlek som är kortare än strängen ignoreras de extra tecknen. Följande deklaration initieras code till exempel som en matris med tre element:
char code[3] = "abcd";
Endast de tre första tecknen i initiatorn tilldelas till code. Tecknet d och det strängslutande null-tecknet ignoreras. Observera att detta skapar en obestämd sträng (dvs. en utan ett 0-värde för att markera dess slut) och genererar ett diagnostikmeddelande som anger det här villkoret.
Deklarationen
char s[] = "abc", t[3] = "abc";
är identisk med
char s[] = {'a', 'b', 'c', '\0'},
t[3] = {'a', 'b', 'c' };
Om strängen är kortare än den angivna matrisstorleken initieras de återstående elementen i matrisen till 0.
Microsoft-specifik
I Microsoft C kan strängliteraler vara upp till 2 048 byte långa.
Avsluta Microsoft Specifik