Funzione Arduino Atoi

Funzione Arduino Atoi
Mentre programmare le schede Arduino dobbiamo prima ottenere una presa solida sul linguaggio C o C ++ perché la maggior parte della programmazione Arduino eredita funzioni da queste due lingue. Una delle funzioni ampiamente utilizzate è atoi () che può trasformare corda personaggi in int avere un numero uguale.

Qual è la funzione atoi ()?

IL atoi () La funzione converte i caratteri stringa in un valore intero. Questa funzione smette di leggere ulteriormente quando viene incontrata da un primo personaggio che non è un numero. In atoi (), non è possibile convertire esponenti o numeri decimali.

Sintassi

La funzione atoi () può essere definita come:

int atoi (const char *str);

Parametri

Questa funzione ha solo un parametro, a corda (STR) che viene passato alla funzione. L'evidenziazione principale di questo parametro stringa è che la funzione non modificherà la stringa di input; Restituisce solo cambiando il suo tipo su int come valore numerico.

Valori di ritorno

Se la funzione Atoi () incontra un valore di stringa valido, restituirà la stessa stringa di un INT con numeri uguali, ma nel caso in cui sia presente un input non valido, la funzione restituirà 0 come output.

Codice di esempio

void setup ()

Seriale.Inizia (115200);
int val_1; /* Una nuova variabile è definita*/
char string_1 [] = "1234"; /* Stringa avviata*/
val_1 = atoi (string_1); /* La funzione Atoi convertirà la stringa in intero*/
Seriale.print ("String_1 è uguale a"); /* Stringa in stampato sul monitor seriale*/
Seriale.println (String_1);
Seriale.print ("String_1 convertito in integer =");
Seriale.println (val_1); /* L'output della funzione atoi è stampata come intero*/
Seriale.print ("String_1 moltiplicato con 2 (1234*2) ="); /* Per verificare che la stringa viene convertita in "int" moltiplicarla con 2*/
Seriale.println (val_1*2);

void loop ()

Nel codice sopra abbiamo descritto l'uso della funzione atoi () nella programmazione Arduino. Prima nella funzione di configurazione della comunicazione seriale viene avviata definendo il tasso di baud. Prossime due variabili Val_1 E String_1 è avviato con il tipo di dati int E CHAR rispettivamente.

Per convertire la stringa in int atoi () la funzione è inizializzata, usando questa funzione possiamo convertire qualsiasi stringa definita in int. Una volta convertita la stringa, abbiamo stampato l'output sul monitor seriale. Nell'ultimo passaggio abbiamo eseguito un rapido controllo per verificare se la stringa è correttamente convertita in int o no. Possiamo farlo moltiplicando qualsiasi numero con int Val_1.

Produzione

Il terminale di uscita visualizzerà la stringa avviata all'interno dello schizzo e una volta che il corda viene convertito in int Verificheremo l'output moltiplicandolo con un int.

Se viene dato un input valido alla funzione atoi () sotto forma di stringa, restituirà un numero intero uguale alla stringa passata. Se la stringa non ha un numero di input valido, restituirà 0 come output. Le stringhe possono generalmente essere convertite in numeri avendo i seguenti parametri:

  • Una stringa creata interamente dalle cifre ASCII '0123456789'.
  • Stringhe ascii che iniziano con il personaggio '+'
  • Stringa contenente cifre ASCII e inizia con il carattere '-'.

Facciamo un esempio: se una stringa valida non viene data a Atoi () Funzione, cosa tornerà.

void setup ()

Seriale.Inizia (115200);
char string_2 [] = "linuxhint"; /*String_2 è definito*/
int val_2; /*INT Variabile Val_2 è inizializzato*/
val_2 = atoi (String_2); /*Funzione atoi definita*/
Seriale.print ("String_2 è uguale a");
Seriale.println (String_2); /*String_2 è stampato sul monitor seriale*/
Seriale.print ("String_2 convertito in integer =");
Seriale.println (val_2); /*L'output della funzione atoi è stampata*/

void loop ()

Qui in questo codice, abbiamo iniziato definendo il tasso di baud per iniziare la comunicazione seriale tra Arduino e PC. La riga di codice successiva descrive due variabili uno è del tipo di dati int e la seconda descrive una stringa "Linuxhint". Successivamente usando la funzione ATOI passeremo questo carattere stringa su int, ma questa output di tempo sarà zero come mostrato nella sezione di output di seguito.

Il motivo per ottenere questo output non è una dichiarazione di stringa valida, come discusso in precedenza, il programma restituirà solo 0.

Produzione

L'output visualizzerà la stringa inizializzata e poiché non esiste un argomento di input valido, il valore di ritorno per funzione ATOI sarà 0.

Conclusione

Questo rapido tutorial ti guiderà utilizzando la funzione Atoi () nella programmazione Arduino. Usando atoi () possiamo convertire qualsiasi stringa in un int. Tenendo presente un input valido a una stringa, altrimenti restituirà 0 come output per tutti gli input non validi.