C ++ Convert Int in String

C ++ Convert Int in String
La conversione dei dati in due tipi di dati è un fenomeno comune nel linguaggio di programmazione C ++. Allo stesso modo, la conversione dei dati di tipo intero nella stringa è descritta in questa guida. Entrambi i tipi di dati possono essere convertiti in diversi modi.

Il tipo di dati interi è un semplice tipo di variabile che memorizza i dati solo sotto forma di variabili. Non ci sono funzioni specificate che vengono applicate solo ai numeri interi. Mentre la stringa è un tipo di dati che ha diverse funzioni per impostazione predefinita che vengono applicate ad esse. Stringhe archivia i dati sotto forma di virgole invertite. Abbiamo convertito i valori interi e galleggianti nella stringa usando una delle sue funzioni integrate. Per le stringhe, è obbligatorio utilizzare una libreria di stringhe.

Implementazione per convertire l'intero in stringa

Esempio 1

Il processo di conversione di un numero intero in una stringa può essere eseguito attraverso approcci diversi. Ma uno degli approcci di base è utilizzare una funzione integrata 'to-string ()'. Questa è la conversione diretta del valore di input in una stringa. Abbiamo preso due input qui di diversi tipi di dati. Uno è in intero, mentre l'altro è un valore float. Per realizzare la conversione, abbiamo bisogno di aggiungere due librerie al codice sorgente. Uno è "iostream", che è necessario per la CIN e COUT di dati nel programma, poiché abbiamo bisogno di visualizzare il valore risultante, quindi abbiamo bisogno di questa libreria. Allo stesso modo, la conversione è nel tipo di dati stringa, quindi useremo la libreria di stringa. Questa libreria è responsabile di tutte le operazioni e delle funzionalità applicate su e alle stringhe in C++.

#includere
#includere

Questo programma contiene un coinvolgimento di una semplice funzione di stringhe. Le due variabili sono dichiarate qui. Uno conterrà un valore intero e il secondo avrà il valore float. Applicheremo la funzione "to_string ()" su entrambe le variabili. Questa funzione contiene la variabile come parametro e quindi li converte in una stringa.

String stri = to_string (i_val);

Qui viene preso un oggetto di tipo stringa o una variabile che memorizzerà la stringa convertita e questo oggetto verrà utilizzato per visualizzare il valore risultante. Un'affermazione simile sarà per il valore del galleggiante, come abbiamo usato per l'intero.

Dopo aver scritto il codice sorgente nel file, lo salveremo e quindi compileremo il codice utilizzando un compilatore G++. -O La parola chiave verrà utilizzata per salvare l'output in un file di output e verrà utilizzato il file di input in cui è stato scritto il codice sorgente.

$ g ++ -o int int.C
$ ./int

Durante l'esecuzione, vedrai che sia l'intero che i valori del galleggiante sono diventati stringhe. Il valore float contiene cifre extra nel valore risultante, questo è dovuto alla funzione to_string (). Ora si pone una domanda su come confermi che la conversione viene eseguita correttamente o che questi valori siano stringhe o ancora interi? Perché non c'è suggerimento o punto che conferma che si tratta di una stringa.

Questa ambiguità è valida, poiché la funzione di stringa utilizzata sopra è un metodo completo, ma i valori risultanti non sono sufficienti per spiegare.

Quindi, applicheremo una funzione integrata delle stringhe solo per verificare che entrambi i valori risultanti siano in una stringa. Questa funzione aggiunge (). Questa funzione è in grado di aggiungere due stringhe. Il requisito per questo è che entrambi i valori da aggiungere devono essere stringhe, altrimenti questa funzione non funzionerà. Ecco perché applicheremo questa funzione quando entrambi i valori di input vengono convertiti in stringhe. Quindi, abbiamo applicato questa funzione su entrambi i valori nelle stringhe dopo la conversione dai valori interi e galleggianti.

Stri.append (STRF);

Poiché Stri contiene la stringa di numeri interi e STRF contiene la stringa di galleggianti.

Dopo aver applicato questa funzione, visualizzeremo i risultati di questa funzione.

Vedrai che entrambe le stringhe vengono aggiunte tramite questa funzione di append. Quindi, è dimostrato che entrambi i valori convertiti sono stringhe.

Esempio 2

Questo esempio si occupa del coinvolgimento dei flussi di stringhe. Queste sono le parti delle stringhe ma non incluse nella libreria di stringhe di base, quindi dobbiamo aggiungere un file di intestazione separato a questo scopo. Questa è una libreria "sstream" che è un flusso di stringhe. Includi anche una libreria separata per la stringa, poiché dobbiamo applicare qualsiasi operazione di stringa di base nel codice sorgente.

#includere
#includere
#includere

Una classe Stringstream è una classe di streaming che è inclusa per essere applicata solo su stringhe. Implementa le operazioni di input e output sui flussi di base di memoria. Uno stringstream è associato a un oggetto stringa che ci consente di leggere da qualsiasi stringa. Alcuni metodi di base inclusi nei flussi sono chiari (), operatore <<, str(). In this program, we will use operator <<, which is used to add a string to the stringstream object. And also str() function to set the object of string whose contents are present in the stream.

All'interno del programma principale, prenderemo un valore intero, che trasformeremo in una stringa. Successivamente, un flusso di stringa di output verrà dichiarato dichiarando l'oggetto della stringa.

Ostringstream STR1.

Dopo questa dichiarazione, invieremo il numero presente nella variabile come flusso alla stringa di output.

STR1 << num;
Stringa gek = str1.STR ()

Successivamente, il contenuto verrà visualizzato. Ora, il valore risultante è lo stesso numero ma il tipo di dati del valore intero viene modificato in una stringa.

Attraverso un compilatore, quando si esegue il programma, verrà visualizzato il numero.

Esempio 3

Il terzo approccio utile nella conversione dell'intero in stringa è l'uso di un lexical_cast (). Un cast lessicale viene utilizzato e definito per la prima volta nella libreria “Boost/lexical_cast.HPP ”, questo fornisce un operatore di fusione che viene utilizzato per convertire un numero intero in una stringa o viceversa.

#includere

Il resto delle librerie è lo stesso descritto negli esempi sopra per la stringa e il flusso di input/output.

All'interno del programma principale, vengono dichiarati un float e un intero valori. Entrambi i valori verranno convertiti in una stringa. La funzione del cast lessicale prenderà la variabile nel parametro per la conversione, quindi il valore convertito verrà memorizzato in una variabile di tipo stringa.

String strf = boost :: lexical_cast(f_val);

La stessa affermazione verrà utilizzata anche per il valore del galleggiante. Visualizza le stringhe attraverso gli oggetti stringa che hanno memorizzato i valori convertiti restituiti.

Durante l'esecuzione, il risultato sarà il seguente.

Come abbiamo confermato i valori risultanti come stringa nel primo esempio, è possibile controllare anche quel metodo per gli altri due esempi.

Conclusione

Il 'int to string c ++' è un articolo sulla conversione dei dati tra due tipi di dati di base di C++. Vengono evidenziate tre metodologie di base, tra cui la funzione "to_string ()", "flusso" e la funzione boost/lexical_cast (). Speriamo che ogni metodo sia utile per gli utenti nello scopo di implementazione.