Video: argv-2 2025
C ++-programmereren er ofte forpligtet til at manipulere nullterminerede strenge. C ++ giver en række standardstrengmanipuleringsfunktioner for at gøre jobbet nemmere. Nogle af disse funktioner er angivet i denne tabel.
Navn | Funktion |
---|---|
int strlen (streng) | Returnerer antallet af tegn i en streng (ikke inklusive
terminerende null). |
char * strcpy (mål, kilde) | Kopierer kildestrengen til en målgruppe. |
char * strcat (mål, kilde) | Konkroniserer kildestrengen på slutningen af målet
-strengen. |
char * strncpy (mål, kilde, n) | Kopierer en streng op til n tegn
fra kildestrengen til en målgruppe. |
char * strncat (mål, kilde, n) | Konkroniserer kildestrengen på slutningen af målet
streng eller n tegn, alt efter hvad der kommer først. |
char * strstr (streng, mønster) | Returnerer adressen til den første forekomst af mønster i
streng. Returnerer et null, hvis mønster ikke findes. |
int strcmp (source1, source2) | Sammenligner to strenge. Returnerer -1, hvis source1 forekommer før source2 i ordbogen og 1 hvis senere.
Returnerer 0, hvis de to strenge matcher nøjagtigt. |
int strncmp (source1, source2, n) | Sammenligner de første n tegn i
to strenge. |
Du skal tilføje sætningen #include til begyndelsen af et program, der bruger en str … funktion, fordi dette indeholder fil indeholder prototype deklarationer, som C ++ kræver for at tjekke på dit arbejde.
Argumenterne til str … () -funktionerne vises bagud til enhver rimelig person. For eksempel klipper funktionen strcat (mål, kilde) den anden strengkilde på slutningen af det første argumentmål.
Funktionerne strncpy () og strncat () svarer til deres strcpy () og strcat () modparter, bortset fra at de accepterer målbufferens længde som en af deres argumenter. Opkaldet strncpy (szTarget, szSource, 128) siger "Kopier tegnene i szSource til szTarget, indtil du kopierer et null-tegn, eller indtil du har kopieret 128 tegn, alt efter hvad der kommer først. "Dette forhindrer utilsigtet at skrive ud over slutningen af kildestrengen arrayen.