Dat is niet goed; we een manier van omgaan met of verwijzen naar een zin (string) via een identificatiemiddel en niet veel identifiers (de array-elementen) zoals in het bovenstaande geval zou moeten hebben. Daartoe de uitvinders van C ++ besloten dat aan het einde van de array de nul-karakter \\ 0, dan is C ++ zou de reeks tekens overwegen in de array als een string en een identificator kan worden gebruikt voor het identificeren voegen (zie of handvat) de string. De null karakter begint met een backslash, gevolgd door nul, dat is \\ 0.
De identificatie die de resulterende array identificatiemiddelen is de identifier voor de string. Lees en probeer de volgende code dat dit illustreert: #include using namespace std; int main () {char myStr [] = {'t', 'h', 'e', '', 'm', 'a', 'n', '\\ 0'}; cout 0 terug; } Merk op dat de identifier, myStr de cout object niet tussen aanhalingstekens. In de code, het laatste element in de array is het nul-karakter. Het is in enkele aanhalingstekens als de rest van de personages.
Nu de arraynaam die moest de identificator van een constante pointer naar het eerste element (object) van de array en moet het adres van het eerste element (object) van de array terug keert nu de string (letters van de array ), wanneer geplaatst in een bepaalde context, omdat de matrix is gemaakt van tekens en eindigt met '\\ 0'. Alle personages van de array worden geretourneerd, behalve het nul karakter. Normaal gesproken moet een pointer geen waarde van het puntig voorwerp of puntige voorwerpen terug.
In de bovenstaande code, het cout voorgedefinieerde object (context) is ontwerp zodanig dat als het een pointer ontvangt een reeks karakters eindigend, \\ 0 moet alle tekens in de array terug met uitzondering van de eindigende \\ 0. Zo'n pointer verwijst nog naar het eerste element van de array, maar een context (cout object) kunt het gebruiken om alle personages in de reeks te verkrijgen. Wij voeren op. Nog, het coderen van een reeks door het invullen van een array met elementen en eindigend met