[ Argv ] assignment makes [..] without a cast
Sakiir
-
fiddy Messages postés 11653 Date d'inscription Statut Contributeur Dernière intervention -
fiddy Messages postés 11653 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour,
Alors voila J'ai voulu fair mon petit programme à partir d'argument et de fonctions afin de programmer securisé ! ( Eviter les scanf ^^' )
Le lien de mon programme :
http://pastebin.com/1ptZJX0w
Et je me retrouve avec ces erreurs que je ne connais pas.. J'aimerai assigner Des variable à argv[1], argv[2] et argv[3] !
J'espere que vous comprenderez merci !! :D
Alors voila J'ai voulu fair mon petit programme à partir d'argument et de fonctions afin de programmer securisé ! ( Eviter les scanf ^^' )
Le lien de mon programme :
http://pastebin.com/1ptZJX0w
Et je me retrouve avec ces erreurs que je ne connais pas.. J'aimerai assigner Des variable à argv[1], argv[2] et argv[3] !
J'espere que vous comprenderez merci !! :D
A voir également:
- [ Argv ] assignment makes [..] without a cast
- Vlc cast to tv - Guide
- Installer chrome cast - Guide
- Cle cast hdmi - Guide
- Chrome cast - Guide
- Reinitialiser chrome cast - Guide
2 réponses
Salut,
Argv[1]=a
Quelle horreur lol.
Ne voudrais-tu pas plutôt faire le contraire : mettre argv[1] dans a ?
De plus attention a est un int alors que argv[1] est un pointeur sur un char.
Il fait donc faire une conversion. Avec strtol par exemple.
N'oublie pas de verifier b diffèrent de 0 pour la division.
Cdlt
-
Google is your friend
Argv[1]=a
Quelle horreur lol.
Ne voudrais-tu pas plutôt faire le contraire : mettre argv[1] dans a ?
De plus attention a est un int alors que argv[1] est un pointeur sur un char.
Il fait donc faire une conversion. Avec strtol par exemple.
N'oublie pas de verifier b diffèrent de 0 pour la division.
Cdlt
-
Google is your friend
argv est un tableau de char* tu ne peux donc pas lui assigner des valeurs de type int, de plus la taille de ce tableau est de argc, il est donc loin d'être certain que toutes les cases argv[1], argv[2] et argv[3] existent !
De manière générale, argv ne devrait être utilisé que pour la lecture, pas pour l'écriture.
De manière générale, argv ne devrait être utilisé que pour la lecture, pas pour l'écriture.
quels est la maniere d'utiliser cette fonction ? je cherche sur google :D
par exemple ?
Je te ferai un exemple ce soir.
Dois-tu être en int, ou long te convient ? Car sinon il faudra convertir strtol en int.
Lorsque tu appelles ton programme (prgmme 50 3 +), il faut que les paramètres soient exclusivement des chiffres, ou 50ahah doit être considéré comme 50 ?
Sinon, après, tu auras plusieurs contrôles :
a+b peut dépasser la capacité maximale. De même que a-b, a*b. Il faut tester que b est différent de 0 pour faire a/b.
ce ui donne 2+2 car le "1" est 1.Addition :)
Apres je m'n fou totalement que ca soit long ou int :)