Bonjour à tous,

je suis étudiant en IUP à Toulouse et on nous a filé un sujet qui me semblait simple mais je n'avais pas pris en compte le fait que le tableu de pointeurs char *argv[] (je sais c con...) pointait sur des char !!!

Voici le sujet :

Ecrire un programme qui affiche la somme des deux valeurs qui lui sont passées en paramètres.
Et voici le code que j'ai pondu naïvement.

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
#include <stdio.h>
int main(int argc, char *argv[])
{
	if (argc > 3)
	{
		int sum = (int *)*argv[1] + (int *)(* argv[2]);
		printf(sum);
	}
}
Existe-t-il une fonction de la biliothèque standard ou autre qui me permette de passer d'un char (équivalent à byte me semble-t-il ?)
à un int ?

Ah! J'oubliais de dire que j'ai cherché dans le K&R et "la référence du C ANSI/ISO" de Delannoy ainsi que sur google et je n'ai rien trouvé.
Tous les articles manipulent uniquement des chaines de caratères passées en paramètre par le shell. => C'EST RAGEANT !!!
Merci d'avance