Caractères d'imprimerie et leur code ASCII en C

comment imprimer un caractère et sa valeur ASCII équivalente en C?

23
demandé sur SilentGhost 2009-09-24 19:52:09

12 réponses

cela imprime toutes les valeurs ASCII:

int main()
{
    int i;
    i=0;
    do
    {
        printf("%d %c \n",i,i);
        i++;
    }
    while(i<=255);
    return 0;
}

et ceci affiche la valeur ASCII d'un caractère donné:

int main()
{
    int e;
    char ch;
    clrscr();
    printf("\n Enter a character : ");
    scanf("%c",&ch);
    e=ch;
    printf("\n The ASCII value of the character is : %d",e);
    getch();
    return 0;
}
33
répondu ennuikiller 2017-08-18 04:12:52

essaye ceci:

char c = 'a'; // or whatever your character is
printf("%c %d", c, c);

le %c est la chaîne de format pour un caractère simple, et le %d pour un chiffre/entier. En casting le char à un entier, vous obtiendrez la valeur ascii.

4
répondu MBillock 2009-09-24 17:10:08

pour imprimer toutes les valeurs ascii de 0 à 255 en utilisant la boucle while.

#include<stdio.h>

int main(void)
{
    int a;
    a = 0;
    while (a <= 255)
    {
        printf("%d = %c\n", a, a);
        a++;
    }
    return 0;
}
1
répondu Sudeep Acharya 2018-03-31 15:35:01

les caractères à l'intérieur d'un seul guillemet ('XXXXXX'), lorsqu'ils sont imprimés sous forme décimale, doivent afficher leur valeur ASCII.

int main(){

    printf("D\n");
    printf("The ASCII of D is %d\n",'D');

    return 0;

}

Sortie:

% ./a.out
>> D
>> The ASCII of D is 68
0
répondu syamantak82 2015-02-08 16:40:17

Rien ne peut être plus simple que ce

#include <stdio.h>  

int main()  
{  
    int i;  

    for( i=0 ; i<=255 ; i++ ) /*ASCII values ranges from 0-255*/  
    {  
        printf("ASCII value of character %c = %d\n", i, i);  
    }  

    return 0;  
}   

Source:programme pour imprimer la valeur ASCII de tous les caractères

0
répondu Pankaj Prakash 2015-06-19 11:53:23

ceci lit une ligne de texte à partir de l'entrée standard et imprime les caractères dans la ligne et leurs codes ASCII:

#include <stdio.h>

void printChars(void)
{
    unsigned char   line[80+1];
    int             i;

    // Read a text line
    if (fgets(line, 80, stdin) == NULL)
        return;

    // Print the line chars
    for (i = 0;  line[i] != '\n';  i++)
    {
        int     ch;

        ch = line[i];
        printf("'%c' %3d 0x%02X\n", ch, ch, (unsigned)ch);
    }
}
0
répondu David R Tribble 2017-09-25 16:08:03

void main() {

printf("%d",'a'); //On peut remplacer un avec notre choix de personnage pour obtenir sa valeur ASCII//

getch ();

}

-1
répondu ashwani chaudhary 2013-01-20 06:50:50
#include"stdio.h"

#include"conio.h"//R.M.VIVEK coding for ascii display values

void main()
{

    int rmv;

    for(rmv=0;rmv<=256;rmv++)
        if(printf("%c",rmv))
            getch();
}
-1
répondu R.M.VIVEK Arni 2014-09-23 08:47:38

j'ai été en utilisant "pour" C'est ma solution:

using System;
using System.Text;

    class PrintASCIITable
    {
        static void Main()
        {
            byte symbols = 255;

            for (int i = 0; i < symbols; i++)
            {
                Console.WriteLine((char)i);
            }
        }
    }
-1
répondu Dan 2015-05-25 19:26:21
#include<stdio.h>
#include<conio.h>
void main()
{
   int i;
   char ch;
   clrscr();
   printf("\t Enter a Value: ");
   scanf("%c",&ch);
   i=0;
   while(i<=ch)
   {
        printf("\t %d Is %c \n",i,i);
        i=i+1;
    }
   getch();
}
-1
répondu Manish Rana 2015-08-15 18:20:44

cela devrait fonctionner dans n'importe quel système C, pas seulement ceux qui sont basés sur ASCII ou UTF-8:

printf ( " Q is decimal 81 in ASCII\n" );

Vous a demandé de l' char; les 96 autres sont laissés comme un exercice pour le lecteur.

-3
répondu Pete Kirkham 2009-09-24 16:20:19

Vous pouvez aussi utiliser comme ceci (c++):

int main(){
      int x;
      cin >> x;
      cout <<(char)x;  // In the form of character
      char a;
      cin >> a;
      cout << (int)a;  // In the form of `Ascii` code
}
-3
répondu Amirh ranjbar 2016-02-10 18:52:25