Video: argv-2 2024
C ++-programmeraren behövs ofta för att manipulera nollställda strängar. C ++ ger ett antal standardsträngmanipuleringsfunktioner för att göra jobbet enklare. Några av dessa funktioner finns listade i denna tabell.
Namn | Funktion |
---|---|
int strlen (sträng) | Returnerar antalet tecken i en sträng (ej inklusive
avslutande null). |
char * strcpy (mål, källa) | Kopierar källsträngen till en målgrupp. |
char * strcat (mål, källa) | Kombinerar källsträngen till slutet av målet
-strängen. |
char * strncpy (mål, källa, n) | Kopierar en sträng upp till n tecken
från källsträngen till en målgrupp. |
char * strncat (mål, källa, n) | Kombinerar källsträngen till slutet av målet
sträng eller n tecken, beroende på vilket som kommer först. |
char * strstr (sträng, mönster) | Returnerar adressen för den första förekomsten av mönster i
strängen. Returnerar en null om mönstret inte hittas. |
int strcmp (source1, source2) | Jämför två strängar. Returnerar -1 om source1 inträffar före source2 i ordlistan och 1 om senare.
Returnerar 0 om de två strängarna matchar exakt. |
int strncmp (source1, source2, n) | Jämför de första n tecknen i
två strängar. |
Du måste lägga till uttalandet #include till början av ett program som använder en str … -funktion eftersom det här inkluderar filen innehåller de prototypdeklarationer som C ++ kräver för att kontrollera ditt arbete.
Argumenten till str … () -funktionerna syns bakåt för alla rimliga personer. Till exempel klämmer funktionen strcat (mål, källa) den andra strängkällan till slutet av det första argumentet.
Funktionerna strncpy () och strncat () liknar deras strcpy () och strcat () motsvarigheter förutom att de accepterar målbuffertens längd som en av deras argument. Samtalet strncpy (szTarget, szSource, 128) säger "kopiera tecknen i szSource till szTarget tills du kopierar ett null-tecken eller tills du har kopierat 128 tecken, beroende på vilket som kommer först. "Detta undviker oavsiktligt att skriva bortom slutet av källsträngaruppsättningen.