Arduino strcpy -funksjon

Arduino strcpy -funksjon
Arduino arver sin programmering fra C/C ++ -språk og et stort utvalg av Arduino -programmeringsfunksjoner ligner disse to språkene. De strcpy () er en av dem som hjelper brukere å kopiere en streng fra en destinasjon til en annen. La oss finne ut hvordan du bruker denne funksjonen i Arduino -programmering ved hjelp av et eksempel.

strcpy () funksjon

For å kopiere en streng fra kilde til en ny streng som normalt refereres til som destinasjon, bruker vi Arduino strcpy () -funksjon. Det inkluderer også null tegn mens du kopierer. Den kopierer en streng fra en variabel og lagrer den inne i en ny variabel.

For å unngå overløp, må størrelsen. Den kan også overskrive destinasjonsstrengen med en ny. Noen nøkler Høydepunkter av StrcPy () -funksjonen er gitt nedenfor:

  • Kildestreng kopieres til destinasjonsstrengen.
  • Hele strengen byttes ut i stedet for å bli lagt ved.
  • Ingen endring i kildestreng.

Syntaks

char* strcpy (char* destinasjon, const char* kilde);

Syntaks viser at strcpy () funksjoner kopierer streng med const char -type fra kilde til en ny destinasjonsstreng char -type inkludert null termineringskarakter '\ 0'.

  • Kilde er av const char* type. Const char -typen sikrer at strengen peker på av kilde kan ikke endres etter funksjon.
  • Destinasjonen er av Char* type. Denne datatypen vil sikre at strengen peker på av mål kan endres etter funksjon.

Parametere

Denne funksjonen tar to parametere:

  • Mål: Peker til destinasjonsarray hvor kildestrenginnhold skal kopieres.
  • Kilde: Peker til streng der strenginnholdet er kopiert fra.

Returverdi

StrcPy () Funksjon Returnerer:

  • Mål: strcpy () funksjonsretur destinasjonsstreng etter å ha kopiert den fra kilde.

strcpy () udefinert oppførsel

StrcPy () -funksjonen viser udefinert oppførsel hvis:

  • Minnet som er tildelt for destinasjonsstrengen er mindre enn kildestrengen.
  • Strengene overlapper hverandre.

Eksempelkode

Skriv inn koden nedenfor i Arduino IDE. Last opp kode til Arduino -styret og åpne seriemonitoren for å se utdata.

void setup ()
const char* source = "linuxhint.Com ";
Char Destination [17] = "Arduino";
Serie.Begin (115200);
Serie.print ("source string =");
Serie.println (kilde);
Serie.print ("destinasjonsstreng før strcpy =");
Serie.println (destinasjon);
strcpy (destinasjon, kilde);
Serie.print ("destinasjonsstreng etter strcpy =");
Serie.println (destinasjon);

void loop ()

Over koden starter med å definere kilde og en destinasjonsstreng. Kildestreng er definert som const char som definerer en ingen endring i kildestreng mens destinasjonsstreng bare er char -type som viser at den kan endres. Neste seriell kommunikasjon begynner med å definere baudfrekvens.

Først vil vi skrive ut både kilde- og destinasjonsstreng ved hjelp av seriell.println () på seriemonitoren. Etter det har vi definert StrcPy () -funksjon som vil kopiere kildestrengen til destinasjonen.

Siste del av koden vil skrive ut den nye kopierte strengen på destinasjonen.

Produksjon

Kodeutgang vil bli skrevet ut på seriemonitoren. Kilde- og destinasjonsstreng vil bli skrevet ut. Destinasjonsstreng før og etter strcpy () -funksjon kan sees i utgangsterminalen.

Konklusjon

Arduino er en plattform som gir brukerne frihet til å programmere mikrokontrolleren. Flere funksjoner som StrcPy () hjelper til med å optimalisere Arduino -koden. Denne funksjonen kopierer en streng fra kilde til en ny char -array -streng som heter destinasjonen. Enhver streng kan kopieres, men hold destinasjonsstrengen med størrelse større enn kilde.