#include <stdio.h>
#include <stdlib.h>
int main()
{
int x = 1;
printf("please make a selection with your keyboard\n");
sleep(1);
printf("1.\n");
char input;
scanf ("%c", &input);
switch (input) {
case '1':
x=x+1;
printf(x);
}
return(0);
}
J'essaie de créer une variable pour s'ajouter à elle-même, puis d'imprimer cette variable mais je n'arrive pas à faire en sorte que mon code fonctionne.
mon erreur de sortie est
newcode1.c: In function ‘main’:
newcode1.c:20:2: warning: passing argument 1 of ‘printf’ makes pointer from integer without a cast [enabled by default]
In file included from newcode1.c:1:0:
/usr/include/stdio.h:362:12: note: expected ‘const char * __restrict__’ but argument is of type ‘int’
newcode1.c:20:2: warning: format not a string literal and no format arguments [-Wformat-security]
Votre printf
a besoin d'une chaîne de format:
printf("%d\n", x);
Cette page de référence explique comment utiliser printf
et les fonctions associées.
Comme Shafik l'a déjà écrit, vous devez utiliser le bon format car scanf
vous procure un caractère . N'hésitez pas à regarder ici si vous n'êtes pas sûr de l'utilisation: http://www.cplusplus.com/ référence/cstdio/printf/
Astuce: il est plus rapide/plus agréable d'écrire x=x+1
; le plus court chemin: x++;
Désolé de répondre à ce qui a été répondu, je voulais juste lui donner le lien - le site m’était vraiment utile tout le temps avec C.