Code simple en C qui ne marche pas !!!!:@

Résolu
wassimee Messages postés 38 Date d'inscription   Statut Membre Dernière intervention   -  
wassimee Messages postés 38 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,
Voila mon code et en exécutant il m'affiche n'importe koi (un symbole et pas 1)
Cordialement.


#include <stdio.h>

int main(){

char c;
int i=1;
c=(char)i;

printf ("%c\n",c);
system("pause");
return 0;

}
A voir également:

7 réponses

fiddy Messages postés 11069 Date d'inscription   Statut Contributeur Dernière intervention   1 846
 
Bonjour,

Tout d'abord, n'oublie pas d'inclure stdlib.h puisque tu utilises la fonction system.
Sinon c'est normal que ça affiche n'importe quoi. Tu demandes au compilateur d'afficher le caractère correspondant au code ascii 1. C'est très différent du caractère '1'.
Donc si vous voulez afficher '1', mettez : int i='1'; /*avec des apostrophes*/

Cdlt,
0
wassimee Messages postés 38 Date d'inscription   Statut Membre Dernière intervention  
 
Merci fiddy pour votre réponse
mais si jamais je voudrais remplir un tableau de type char et il est rempli par des entiers .
0
wassimee Messages postés 38 Date d'inscription   Statut Membre Dernière intervention  
 
par exemple:
char tab[50];
int i;
for (i=0;i<50;i++){
tab[i]=i;
}
//Cordialement
0
fiddy Messages postés 11069 Date d'inscription   Statut Contributeur Dernière intervention   1 846
 
Que veux-tu mettre dans ton tableau ?
Car un char ne contient qu'un caractère. Donc, ça va de '0' à '9'.
Sinon tu peux mettre des entiers tout simplement.
Dans ce cas, il suffit de mettre : int tab[50];
Et pour afficher le tableau : printf("%d",tab[i]); avec i un nombre compris entre 0 et 50.

Cdlt,
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
wassimee Messages postés 38 Date d'inscription   Statut Membre Dernière intervention  
 
tu ne ma compris mé je te remercie de tte facon ,en faite je ve remplir un tableau de type char
par exemple
char tab1[4]={'1','2','3','4'} mais par un boucle for .
0
fiddy Messages postés 11069 Date d'inscription   Statut Contributeur Dernière intervention   1 846
 
Dans ce cas :


char tab[10];
int i;
for (i='0';i<='9';i++){
tab[i]=i;
}
0
wassimee Messages postés 38 Date d'inscription   Statut Membre Dernière intervention  
 
merciiiiiiii :)
0