CONNEXION
  • RetourJeux
    • Sorties
    • Hit Parade
    • Les + populaires
    • Les + attendus
    • Soluces
    • Tous les Jeux
    • Gaming
  • RetourActu Gaming
    • News
    • Astuces
    • Tests
    • Previews
    • Toute l'actu gaming
  • RetourBons plans
    • Bons plans
    • Bons plans Smartphone
    • Bons plans Hardware
    • Bons plans Image et Son
    • Bons plans Amazon
    • Bons plans Cdiscount
    • Bons plans Decathlon
    • Bons plans Fnac
    • Tous les Bons plans
  • RetourJVTech
    • Actus High-Tech
    • Intelligence Artificielle
    • Smartphones
    • Mobilité urbaine
    • Hardware
    • Image et son
    • Tutoriels
    • Tests produits High-Tech
    • Guides d'achat High-Tech
    • JVTech
  • RetourCulture
    • Actus Culture
    • Culture
  • RetourVidéos
    • A la une
    • Gaming Live
    • Vidéos Tests
    • Vidéos Previews
    • Gameplay
    • Trailers
    • Chroniques
    • Replay Web TV
    • Toutes les vidéos
  • RetourForums
    • Hardware PC
    • PS5
    • Switch 2
    • Xbox Series
    • Switch
    • Pokemon pocket
    • FC 25 Ultimate Team
    • League of Legends
    • Tous les Forums
  • PC
  • PS5
  • Xbox Series
  • Switch 2
  • PS4
  • One
  • Switch
  • iOS
  • Android
  • MMO
  • RPG
  • FPS
En ce moment Genshin Impact Valhalla Breath of the wild Animal Crossing GTA 5 Red dead 2
Liste des sujets

Petite question en C...

Inflation
Inflation
Niveau 7
22 mars 2008 à 14:27:28

Bonjour, en exécutant un prog, je mets dans argv[1] un "1".

Le prob c'est que c'est un char, et si je fais

variableINT = argv[1]

dans variableINT (qui est un int) j'ai 49, et non pas 1.

Je fais comment la conversion pour que j'ai un int avec un 1? Merci d'avance..

UltraSPARC
UltraSPARC
Niveau 2
22 mars 2008 à 15:49:01

Dans une chaîne de caractères, les caractères sont stockés grâce à leur code ASCII. Si tu affectes un char à un entier, tu récupère donc ce code ASCII.
Comme tout les chiffres sont à la suite dans la table ASCII, pour récupérer un caractère (compris entre '0' et '9') sous forme d'un entier tu fait ton_char - '0'. (ex: '4' - '0' vaut 4).

Inflation
Inflation
Niveau 7
22 mars 2008 à 16:02:25

En effet, tu as raison. Je croyais que c'était qu'en Pascal, mais en fait c'est aussi en C, j'suis bete ^^ Merci :merci:

guyver2
guyver2
Niveau 10
22 mars 2008 à 17:42:06

salut, la fonction int atoi(char *) de stdio.h ou stdlib.h je sais plus est faite pour ça, elle prend une chaine et te sort l'entier qui y est ecrit.

Ca peut t'etre utile si un jour tu passes "11" et pas "1" dans argv

Sous forums
  • Aide à l'achat Mac
  • Macintosh
  • Création de sites web
  • Création de Jeux
  • Linux
  • Programmation
  • Internet
  • Steam Deck
  • Hardware
La vidéo du moment