Problême avec code block
gnouf1
-
[Dal] Messages postés 6373 Statut Contributeur -
[Dal] Messages postés 6373 Statut Contributeur -
Bonjour,
je suis un débutant en programmation C et j'utilise code block.
J'entre différent codes:
#include <stdio.h>
int main(void){
char nom [5]="gnouf";
printf ("%s"),nom;
}
#include <stdio.h>
int main(void){
char lettre='a';
printf ("%c"),lettre;
}
#include <stdio.h>
int main(void){
int chiffre='1';
printf ("%d"),chiffre;
}
Mais jamais il m'affiche ce qu'il faut après re-compilation !
pour le premier cas il m'affiche "@"
pour le second "é"
pour le troisième "4200592
c'est très agacçant
en ésperant une réponse rapide,
je suis un débutant en programmation C et j'utilise code block.
J'entre différent codes:
#include <stdio.h>
int main(void){
char nom [5]="gnouf";
printf ("%s"),nom;
}
#include <stdio.h>
int main(void){
char lettre='a';
printf ("%c"),lettre;
}
#include <stdio.h>
int main(void){
int chiffre='1';
printf ("%d"),chiffre;
}
Mais jamais il m'affiche ce qu'il faut après re-compilation !
pour le premier cas il m'affiche "@"
pour le second "é"
pour le troisième "4200592
c'est très agacçant
en ésperant une réponse rapide,
A voir également:
- Problême avec code block
- Code ascii - Guide
- Block breaker - Accueil - Services en ligne
- Code block - Télécharger - Langages
- Code puk bloqué - Guide
- Comment déverrouiller un téléphone quand on a oublié le code - Guide
2 réponses
Salut gnouf1,
Comme le dit Kingzak34, ton usage de printf n'est pas bon : les arguments de printf doivent être à l'intérieur des parenthèses de la fonction printf. C'est le cas d'ailleurs, en général, de toutes les fonctions en C.
http://www.cplusplus.com/reference/cstdio/printf/
D'autres remarques :
La taille de "nom" est insuffisante pour stocker les caractères qui composent la chaîne et le '\0' terminal. Il faut un
cf : https://www.commentcamarche.net/contents/118-langage-c-les-chaines-de-caracteres
Pour ton dernier printf
Dal
Comme le dit Kingzak34, ton usage de printf n'est pas bon : les arguments de printf doivent être à l'intérieur des parenthèses de la fonction printf. C'est le cas d'ailleurs, en général, de toutes les fonctions en C.
http://www.cplusplus.com/reference/cstdio/printf/
D'autres remarques :
char nom [5]="gnouf";
La taille de "nom" est insuffisante pour stocker les caractères qui composent la chaîne et le '\0' terminal. Il faut un
char nom[6]au moins.
cf : https://www.commentcamarche.net/contents/118-langage-c-les-chaines-de-caracteres
Pour ton dernier printf
int chiffre='1';n'est probablement pas ce que tu veux faire, mais plutôt
int chiffre=1;(sans apostrophes), pour que le nombre 1 soit affecté à la variable entière. Autrement '1' (avec des apostrophes) va désigner le caractère '1', et ce que tu vas mettre dans la variable entière, cela sera la valeur du caractère '1' en ASCII, c'est à dire la valeur décimale 49.
Dal