CCorsi

Come ottenere il valore ASCII di una stringa in C

La codifica ASCII è un uno standard per la codifica dei caratteri pubblicato nel 1968 dall’American National Standards. Basandosi su un sistema di codifica a 8 bit è il principale sistema di codifica utilizzato dai calcolatori. Potrebbe quindi risultare utile ottenere il valore ASCII di una stringa in C.

Lavorare con le stringe in C già di suo non è molto semplice e pensare di poterle convertire potrebbe rendervi la vita non molto semplice. Tuttavia abbiamo una funzione a nostra disposizione che potrebbe salvarci la vita strlen. Strlen è una funzione che richiede come parametro una stringa e restituisce la relativa lunghezza. Es.

 printf("%d",(int)strlen("DeveloperSumo")); // Farà Visualizzare 13

Conoscendo dunque la lunghezza di una stringa possiamo effettuare dei cicli che ci possono consentire di effettuare varie operazioni sui singoli caratteri.

Nel nostro esempio abbiamo inizialmente richiesto all’utente di inserire una stringa e tramite il valore inserito valorizziamo la variabile source. Successivamente, tramite la sopracitata funzione strlen otteniamo la lunghezza della stringa e procediamo quindi ad effettuare un ciclo tramite il valore ottenuto.

Per poter visualizzare il valore ASCII di un determinato carattere è sufficiente stampare esso come se fosse un valore numerico. Ad esempio:

char a = 'C';
printf("%c",a); //VISUALIZZA IL CARATTERE
printf("%d",a); //VISUALIZZA IL VALORE ASCII

Non resta altro che procedere con la stesura del codice.

 #include <stdio.h>
 #include <string.h>

 int main(){

    char source[50] = "";
    printf("Inserisci stringa: ");
    
	scanf("%s", source);
    int length = (int)strlen(source);
    
    printf("\n\nValore ASCI di %s: \n", source);
    for (int i = 0; i < length; i++) 
    {
       printf("%c = %d\n", source[i], source[i]);
    }
}

LINK UTILI

Pagina Instagram: https://www.instagram.com/developer_sumo/
Corso C: https://www.developersumo.com/c/
I nostri Corsi: https://www.developersumo.com/corsi/

What's your reaction?

Excited
0
Happy
0
In Love
0
Not Sure
0
Silly
0

You may also like

More in:C

Leave a reply

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *