Strncat C ++

Strncat C ++
Funkcja strncat () działa na ciągu zawartym w tablicy char w stylu C i jest używana do dołączania pierwszych n znaków jednego ciągu do ogona innego ciągu. W porównaniu do funkcji strcat () zaleca się użycie funkcji strncat (), ponieważ weryfikuje skopiowany rozmiar danych i kopie, aż osiągnie terminator zerowy, co może powodować przepełnienie bufora. Użyjemy funkcji strncat () z wdrożeniem niektórych przykładów w tym artimie. Krótko mówiąc, możemy dołączyć określoną sekcję jednego łańcucha do końca drugiego za pomocą funkcji strncat ().

Składnia funkcji strncat ()

Używamy składni funkcji strncat () w C ++, podobnie jak ta wykazana w następujący sposób:

strncat (dest, src, hrabia)

Funkcja strncat () przyjmuje trzy argumenty, które są dest, src i liczą. Pierwszy charakter SRC służy do zastąpienia zerowego znaku końcowego, który na ogół występuje na końcu DED, a wynikowy charakter ma również zerowe zakończenie. Zachowanie funkcji strncat () jest niezdefiniowane, gdy jest nakładający się ciąg lub jeśli ciąg SRC nie ma większego rozmiaru niż tablica docelowa.

Przykład 1: Za pomocą funkcji strncat () w C++

Używamy funkcji STRNCAT C ++, aby zademonstrować funkcjonalność tej funkcji. Po pierwsze, moduł CSTRING jest dodawany do sekcji nagłówka do manipulacji ciągami. Następnie mamy plik iostream dla strumieni wejściowych i wyjściowych. Następnie definiujemy główną funkcję. Główna funkcja jest zadeklarowana za pomocą typu danych Char dla inicjalizacji ciągów. Definiujemy struny dla zmiennych „src” i „dest”. Te zmienne są parametrami dla funkcji STRNCAT.

Zmienne SRC i DET mogą przyjmować tylko „50” znaki. Następnie wywołujemy funkcję strncat i passe „src” i „dest” jako dane wejściowe z innym wejściem, które jest „liczbą”. Wejście „liczba” zlicza maksymalne znaki z określonego ciągu w Dest, które mają zostać skopiowane i łączy pozostałe znaki z ciągu SRC. Z instrukcją C ++ Court drukujemy początkowy ciąg, którym jest ciąg SRC. Następnie drukujemy ciąg Dest, który jest ciągiem docelowym. Kod tego konkretnego instancji jest dołączany na następujący obraz:

Z kompilatorem G ++ kompilujemy poprzedni program i zwraca początkowe ciąg i końcowy ciąg, który jest ciągiem docelowym uzyskanym z funkcji StrnCAT.

Przykład 2: Korzystanie z elementów dołączania funkcji strncat () w C++

W tym przykładzie dodajemy elementy znaków z jednego łańcucha do innego ciągu za pomocą funkcji Strncat. Dlatego uwzględniamy moduł CSTRING w sekcji nagłówka następującego programu. Następnie wdrażamy główną funkcję, w której definiujemy typ danych charbead dla zmiennej oznaczonej jako „array1” i „array2”. Zmienne „Array1” i „Array2” są przypisane do wartości indeksu „20”, która przyjmuje tylko 20 znaków. Następnie zainicjujemy wartość ciągu „Witamy” w zmiennej „Array1” i wartości ciągłej „Wonder Land” do zmiennej „Array2”.

Drukujemy struny przed funkcją strncat (). Funkcja strncat jest teraz wywoływana i przechodzimy w nią parametry „Array1” i „Array2”. Zmienna „Array1” to ciąg źródłowy, a zmienna „Array2” jest ciągiem docelowym. Określamy również parametr „liczba” w funkcji STRNCAT, aby skopiować znak z ciągu. Przypisujemy numer „2” do funkcji STRNCAT, więc zliczał tylko dwa znaki z łańcucha źródłowego i kopie do ciągu docelowego. Powstała linia jest wyświetlana z poleceń Cout na ekranie wyjściowym. Kod tego konkretnego instancji jest dołączany na następujący obraz:

Kompilacja poprzedniego programu zwraca następujący ciąg. Widzimy, że wyniki dwóch ciągów są wyświetlane na ekranie.

Przykład 3: Za pomocą funkcji strncat () i funkcji strcat () c++

Widzieliśmy funkcjonalność funkcji strncat () w języku programowania C++. Teraz rozróżniamy funkcję strncat () i funkcję strcat (). Wiemy, że funkcja strcat () może scalić lub połączyć n znaków z jednego ciągu do drugiego. Za pomocą funkcji strcat () obsługujemy ciąg z znakiem zerowym. Znak zerowy (0), który reprezentuje koniec ciągu, powinien być dostępny na wejściu ciągów, które jest przekazywane do funkcji. Użyjmy tych dwóch funkcji w jednym przykładzie, aby wykonywać swoje odrębne funkcje. Deklarujemy trzy zmienne: jedna dotyczy łańcucha źródłowego, a pozostałe dwa reprezentują ciąg docelowy. Następnie po prostu wyświetlamy wartość ciągu, którą utrzymuje każdą zmienną.

Następnie mamy funkcję strncat (), która przyjmuje zmienną SRC i zmienną DET1 jako argument. Wynikającym łańcuchem z tej funkcji jest ciąg docelowy „dest1”, który łączy znak źródłowy „src”. Następnie wzywamy funkcję strncat (). Tutaj przekazujemy zmienną „dest2” i zmienną „src” jako wejście wraz ze zmienną liczby. Pokazaliśmy wyniki funkcji strncat, drukując ją za pomocą polecenia Cout. Kod tego konkretnego instancji jest dołączany na następujący obraz:

Teraz możemy zobaczyć ciąg przed funkcją Strcat i po funkcji StrnCAT. Również dane wyjściowe ciągu przed funkcją strncat () i wynikowy ciąg po funkcji strncat ().

Wniosek

Ten przewodnik obejmował funkcję strncat (), która jest obsługiwana przez moduł CSTRING C++. Wykazaliśmy funkcję strncat () z jej składnią i przykładami. Pierwszy przykład właśnie zastosował funkcję strncat (). Ale w następnym przykładzie mamy dostęp do znaków ciągu docelowego, dołączając znaki łańcucha źródłowego. Chociaż mamy wyraźne rozróżnienie między wydajnością rozróżnienia Strncat i Strcat w C++.