strtol e strtoul funzioni in c

strtol e strtoul funzioni in c

Nella lingua C, un file di intestazione standard è presentato come una "stringa", denominata stringa.File di intestazione H. Questo file di intestazione gestisce diversi tipi di stringhe. Esistono diverse funzioni di stringa predefinite standard disponibili in questo file di intestazione per manipolare quelle stringhe.

C'è un altro file di intestazione standard disponibile in lingua C chiamata stdlib.File di intestazione H. Sono disponibili due funzioni predefinite standard: strtol () e strtoul (). Attraverso queste funzioni, convertiamo i diversi tipi di stringa al numero intero lungo e al numero intero lungo non firmato, rispettivamente.

Innanzitutto, vedremo le caratteristiche e l'implementazione della funzione strtol ().

Caratteristiche della funzione strtol ()

File di intestazione: La definizione della funzione strtol () esiste in un file di intestazione standard nella libreria C denominata in stdlib.File di intestazione H. È una funzione predefinita standard.

Sintassi:

long strtol (const char * size_str, char ** ptr_str, int bse_n);

Descrizione: La funzione strtol () trasforma una stringa in un valore intero lungo. Questa funzione non esegue quando la funzione non ha accettato un input valido. Questa funzione determina il punto di terminazione in cui un valore viene assegnato a una variabile. PTR_STR si riferisce a questa variabile se il valore di PTR_STR non è nullo. Il parametro BSE_N riflette il valore di base. Il valore di base viene utilizzato come 0 o 2 a 36. Se il numero inizia con OX, allora la sua base è 16. Se inizia con uno zero, allora la sua base è 8; Altri sono decimali in base.

Parametri:

size_str: È un puntatore a una stringa che converte la stringa.

Ptr_str: Si riferisce a un puntatore. Questo puntatore mantiene l'indirizzo di un puntatore della stringa.

bse_n: La conversione del numero dipende dalla base di un numero. Il BSE_N memorizza questo valore.

Ritorna: La funzione strtol () fornisce un output come valore, che è un tipo di intero lungo.

Esempio di programmazione 1

Qui vedremo come la funzione strtol () converte una stringa a un valore intero lungo e l'implementazione della funzione strtol ():

#includere
#includere
int main ()

Char Strr [60]; // dichiarando una stringa
Char *s;
Long V; // Tenere il valore intero lungo convertito
printf ("Inserisci un valore lungo:");
ottiene (strr);
v = strtol (strr, & s, 0); // chiamata strtol () funzione per la conversione
printf ("Il valore risultante è: %ld, raddoppio del valore: %ld \ n", v, v*2);
restituzione 0;

Produzione

Spiegazione

Qui, dichiariamo una stringa denominata strr e assegnare alcuni valori all'utente con l'aiuto della funzione get (). Dichiariamo una stringa puntatore denominata *S puntare la stringa e un lungo valore intero.

Chiamiamo la funzione strtol () e passiamo la stringa, attraverso il puntatore all'interno della funzione tra parentesi di strtol () per convertire la stringa in un valore intero lungo. Ora, stampiamo il valore di V per stampare l'output desiderato.

Esempio di programmazione 2

Qui vedremo un altro esempio della funzione strtol ().

#includere
#includere
int main ()

Char Strr [50] = "430 I Am Here"; // dichiarando e inizializza una stringa
Char *s;
Long V; // Tenere il valore intero lungo convertito
v = strtol (strr, & s, 10); // chiamata strtol () funzione per la conversione
printf ("Il valore probabile è %ld \ n", v);
restituzione 0;

Produzione

Spiegazione

In questo esempio di programmazione, dichiariamo una stringa denominata strr [] e assegniamo un certo valore. Quindi chiamiamo la funzione strtol () e, all'interno della sua parentesi, passiamo la stringa e la stringa al puntatore come argomenti. Il valore int lungo è il rendimento da questa funzione come output.

funzione strtoul ()

Ora discuteremo le caratteristiche e l'applicazione della funzione strtoul ().

Caratteristiche della funzione strtoul ()

File di intestazione: La funzione strtoul () si presenta nello stdlib.File di intestazione H.

Sintassi: UNSMIDED Long int strtul (const char * size_str, char ** ptr_str, int bse_n)

Descrizione: Questa funzione aiuta a dare l'output come calcolo della conversione di qualsiasi stringa in un valore che è un tipo intero lungo non firmato.

Parametri:

size_str: È un puntatore alla stringa.

ptr_str: Si riferisce a un puntatore. Questo puntatore mantiene l'indirizzo di un puntatore della stringa.

bse_n: base del numero da convertire.

Ritorna: restituisce il valore intero lungo.

Esempio di programmazione 3

Qui vedremo un esempio della funzione Stroul ().

#includere
#includere
int main ()

LUN LONG non firmato; // dichiarando una variabile tipo di dati a lungo.
char szstring [50] = "430 I Am Here"; // dichiarando e inizializza una stringa
char *pend;
lungo v; // Tenere il valore intero lungo convertito
lv = strtoul (szstring, & pend, 0); // chiamante strtul () funzione per la conversione
printf ("Il valore probabile è %ld \ n", lv);
restituzione 0;

Produzione

Spiegazione

Qui, dichiariamo una stringa denominata szstring [] e assegniamo alcuni valori all'interno della stringa. Ora chiamiamo la funzione strtoul () e passiamo alcuni argomenti come la stringa, il puntatore del personaggio all'interno della sua parentesi per la conversione. Questa funzione restituisce il valore intero lungo come output e mostra nel monitor

Conclusione

Qui, abbiamo discusso delle caratteristiche delle caratteristiche di strtol () e strtoul (). Queste due funzioni ci aiutano a convertire la stringa in un valore intero lungo, rispettivamente. Queste funzioni sono estremamente utili per convertire il funzionamento delle stringhe in lingua c. Queste funzioni offrono diverse opzioni alla lingua C in operazioni numeriche.