Funkcja Arduino Strcpy

Funkcja Arduino Strcpy
Arduino dziedziczy swoje programowanie od języka c/c ++, a szeroki zakres funkcji programowania Arduino jest podobny do tych dwóch języków. strcpy () jest jednym z nich, który pomaga użytkownikom skopiować ciąg z jednego miejsca docelowego. Dowiedzmy się, jak użyć tej funkcji w programowaniu Arduino za pomocą przykładu.

funkcja strcpy ()

Aby skopiować ciąg z źródła do nowego ciągu zwykle określanego jako miejsce docelowe, używamy funkcji Arduino strcpy (). Zawiera także znaki zerowe podczas kopiowania. Kopiuje ciąg z jednej zmiennej i przechowuje go w nowej zmiennej.

Aby uniknąć przepełnień, rozmiar tablicy docelowej musi być większy niż źródło, w tym znak końcowy. Może również zastąpić ciąg docelowy za pomocą nowego. Niektóre klucze Podświetlania funkcji strcpy () podano poniżej:

  • String źródłowy jest kopiowany do ciągu docelowego.
  • Cały ciąg jest zastępowany zamiast dołączania.
  • Brak zmiany ciągu źródłowego.

Składnia

char* strcpy (char* miejsce docelowe, const char* Źródło);

Składnia pokazuje, że Strcpy () Funkcje kopie ciągów o typu const od źródła do nowego docelowego typu sznurka, w tym znak terminu zerowego „\ 0”.

  • Źródło jest z const char* typ. Typ const cebs zapewnia, że ​​ciąg wskazany źródło nie można zmodyfikować według funkcji.
  • Miejsce docelowe jest zwęglać* typ. Ten typ danych zapewni, że ciąg wskazany przez miejsce docelowe Można modyfikować według funkcji.

Parametry

Ta funkcja przyjmuje dwa parametry:

  • Miejsce docelowe: Wskaźnik do tablicy docelowej, w której ma zostać skopiowana zawartość łańcucha źródłowego.
  • Źródło: Wskaźnik do ciągu, skąd skopiowana jest zawartość łańcucha.

Wartość zwracana

funkcja strcpy () zwraca:

  • Miejsce docelowe: strcpy () Funkcja zwracająca ciąg docelowy po skopiowaniu go ze źródła.

niezdefiniowane zachowanie strcpy ()

Funkcja strcpy () pokazuje niezdefiniowane zachowanie, jeśli:

  • Pamięć przydzielona dla ciągu docelowego jest mniejsza niż ciąg źródłowy.
  • Struny nakładają się.

Przykładowy kod

Wpisz poniższy kod w Arduino IDE. Prześlij kod na płytkę Arduino i otwórz monitor szeregowy, aby zobaczyć wyjście.

void setup ()
const char* source = "Linuxhint.Com ";
cecha ceny [17] = „Arduino”;
Seryjny.rozpocząć (115200);
Seryjny.print („źródło string =”);
Seryjny.println (źródło);
Seryjny.print („String docelowy przed strcpy =”);
Seryjny.println (miejsce docelowe);
strcpy (miejsce docelowe, źródło);
Seryjny.print („String docelowy po strcpy =”);
Seryjny.println (miejsce docelowe);

void Loop ()

Powyższy kod zaczyna się od definiowania źródła i ciągu docelowego. String źródłowy jest zdefiniowany jako const char, który definiuje brak zmiany w ciągu źródła, podczas gdy ciąg docelowy jest tylko typu charytatycznym pokazującym, że można go zmodyfikować. Następna komunikacja szeregowa zaczyna się od zdefiniowania wskaźnika transmisji.

Najpierw wydrukujemy ciąg źródłowy, jak i docelowy za pomocą szeregów.println () na monitorze szeregowym. Następnie zdefiniowaliśmy funkcję strcpy (), która skopiuje łańcuch źródłowy do miejsca docelowego.

Ostatnia część kodu wydrukuje nowy skopiowany ciąg w miejscu docelowym.

Wyjście

Wyjście kodu zostanie wydrukowane na monitor szeregowych. String źródłowy i docelowy zostanie wydrukowany. Funkcja docelowa przed i po Strcpy () można zobaczyć w terminalu wyjściowym.

Wniosek

Arduino to platforma, która daje użytkownikom swobodę programowania mikrokontrolera. Wiele funkcji, takich jak strcpy (), pomaga zoptymalizować kod Arduino. Ta funkcja skopiuje ciąg z źródła do nowego ciągu Char tablic o nazwie Destination. Każdy ciąg można skopiować, ale utrzymuj ciąg docelowy o wielkości większy niż źródło.