C – Struny
Struny jsou vlastně jednorozměrné pole znaků ukončené znakem null „\0“. Tedy null-ukončen řetězec obsahuje znaky, které obsahují řetězec následovaný null.
následující deklarace a inicializace vytvoří řetězec sestávající ze slova „ahoj“., Držet znak null na konci pole, velikost pole znaků obsahující řetězec je větší než počet znaků ve slově „dobrý den.“
char greeting = {"H", "e", "l", "l", "o", "\0"};
Pokud se budete řídit pravidlem pole inicializace pak můžete psát výše uvedeného prohlášení takto −
char greeting = "Hello";
Následující paměťové prezentace z výše uvedených řetězec v C/C++ −
ve Skutečnosti, nechcete místo null znaku na konec řetězce konstantní., Kompilátor C automaticky umístí“ \ 0 “ na konec řetězce, když inicializuje pole., Pokusme se vytisknout výše zmíněné řetězce −
#include <stdio.h>int main () { char greeting = {"H", "e", "l", "l", "o", "\0"}; printf("Greeting message: %s\n", greeting ); return 0;}
výše uvedený kód je sestaven a proveden, to vytváří následující výsledek −
Greeting message: Hello
C podporuje širokou škálu funkcí, které manipulují null-ukončena řetězce −
následující příklad používá některé z výše uvedených funkcí −
výše uvedený kód je sestaven a proveden, to vytváří následující výsledek −
strcpy( str3, str1) : Hellostrcat( str1, str2): HelloWorldstrlen(str1) : 10