Udostępnij za pośrednictwem


inicjowanie ciągów

Można zainicjować tablicę znaków (lub znaków szerokich) za pomocą literału ciągu (lub literału szerokiego ciągu). Na przykład:

char code[ ] = "abc";

inicjuje code jako tablicę znaków z czterema elementami. Czwarty element jest znakiem null, który kończy wszystkie literały ciągu.

Lista identyfikatorów może być tylko tak długo, jak liczba identyfikatorów do zainicjowania. Jeśli określisz rozmiar tablicy krótszy niż ciąg, dodatkowe znaki są ignorowane. Na przykład następująca deklaracja inicjuje code się jako tablica znaków z trzema elementami:

char code[3] = "abcd";

Tylko pierwsze trzy znaki inicjatora są przypisywane do codeelementu . Znak d i znak null zakończenia ciągu są odrzucane. Należy pamiętać, że spowoduje to utworzenie nieokreślonego ciągu (czyli jednego bez wartości 0 w celu oznaczenia jej końca) i wygenerowanie komunikatu diagnostycznego wskazującego ten warunek.

Deklaracja

char s[] = "abc", t[3] = "abc";

jest identyczny z

char s[]  = {'a', 'b', 'c', '\0'},
     t[3] = {'a', 'b', 'c' };

Jeśli ciąg jest krótszy niż określony rozmiar tablicy, pozostałe elementy tablicy są inicjowane do 0.

Specyficzne dla firmy Microsoft

W języku Microsoft C literały ciągu mogą mieć długość do 2048 bajtów.

END Microsoft Specific

Zobacz też

Inicjowanie