Converti Integer in String in Arduino

Yousef Zahid 12 ottobre 2023
Converti Integer in String in Arduino

Molti programmatori alle prime armi trovano difficile convertire interi in stringhe e viceversa a causa della memoria meccanica di un particolare esempio in un libro. Creeremo una road map semplice ma pratica per risolvere problemi come questi in futuro.

Prima di tutto definiamo i termini necessari prima di procedere con il codice.

Un numero intero è una parola matematica che definisce un insieme di numeri naturali. Ad esempio, un numero negativo come -2 è un numero intero, 0 è un numero intero, sebbene non sia né positivo né negativo. Inoltre, tutti i numeri naturali positivi sono anche numeri interi. Tuttavia, fai attenzione a numeri razionali, irrazionali e immaginari non rientrano nel suo ombrello. In un linguaggio di programmazione, la variabile int memorizza numeri interi.

Una stringa in C++, d’altra parte, è solo un array di caratteri unidimensionale. Ad esempio, la parola HU è una stringa di due caratteri. La variabile stringa memorizza i caratteri. Esiste anche la classe String, ma in questa fase è un po’ complessa.

Spiegiamolo in un semplice codice.

Serial.begin(9600);   // Baud rate for communication, sending bits at a rate of
                      // 9600 bits/sec.
char a[] = {72, 85};  //  define two integer in an array.
Serial.println(a);    // Prints the output a.

Prima di iniziare a spiegare, è necessario notare che questo codice richiede un Arduino USB live collegato al PC affinché il monitor seriale visualizzi i risultati.

Il bit rate è 9600, che è necessario. L’aumento potrebbe interrompere il flusso e l’uscita diventerà irregolare. L’intero codice è un numero intero, carattere e stringhe in 3 righe. Il 72 e l'85, due numeri interi, vengono elaborati utilizzando la variabile char e trasformati in parole utilizzando il codice ASCII. Dopo aver recuperato questi dati dalla libreria, il comando Serial.println invia l’output al monitor seriale. Questi due caratteri o alfabeti qui costituiscono una stringa ma non la definiscono necessariamente.

Il monitor stamperà HU per la visualizzazione. Puoi provare a modificare il valore e vedere tu stesso il risultato.

int i = 72;      // Assigns an integer value to i
char b[] = {i};  // the integer value has been assign as a variable to b
Serial.println(b);

Ora, questo esempio non è il tuo tipico. È una semplice conversione da intero a carattere e puoi elaborare ulteriormente il codice per introdurre stringhe se vuoi diventare complesso.

Intero, stringa e spiegazione della variabile char

L’ultimo esempio è un po’ più sofisticato:

int h = 72;  // Assigning integer.
int j = 85;
char c[] = {h,
            j};  // Inputting the variable h and j into the character variable c
String(z) = c;   // Producing a string.
Serial.println(z);

Cominciamo con la prima riga, assegnando un semplice valore intero a h. Così è per j. Inoltre, la variabile char c poi sottosetta queste due variabili e le converte da intero a HEX.

Articolo correlato - Arduino String

Articolo correlato - Arduino Integer