Question sur le C
mumberea
-
Char Snipeur Messages postés 9813 Date d'inscription Statut Contributeur Dernière intervention -
Char Snipeur Messages postés 9813 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour,
je viens de finir avec le gros de la théorie sur le langage C. Néanmoins, j'ai quelque préoccupations:
- je n'ai pas pus trouver de cours claire sur la création des fenêtre graphiques en langage C. Cela veut-il dire qu'il est quasi impossible d'en faire?
- je remarque que dans beaucoup d'exemple sur la toile la fonction main est écrite avec deux arguments: un entier et un pointeur sur un char, c'est à dire int main(int argc, char *argv[]). Je ne vois nul part où ces variable sont utilisés. Je suis même allé plus loin en écrivant des programmes en les omettant; ceux-xi ont bien fonctionnés. Donc?...A quoi sert ces arguments????
je viens de finir avec le gros de la théorie sur le langage C. Néanmoins, j'ai quelque préoccupations:
- je n'ai pas pus trouver de cours claire sur la création des fenêtre graphiques en langage C. Cela veut-il dire qu'il est quasi impossible d'en faire?
- je remarque que dans beaucoup d'exemple sur la toile la fonction main est écrite avec deux arguments: un entier et un pointeur sur un char, c'est à dire int main(int argc, char *argv[]). Je ne vois nul part où ces variable sont utilisés. Je suis même allé plus loin en écrivant des programmes en les omettant; ceux-xi ont bien fonctionnés. Donc?...A quoi sert ces arguments????
3 réponses
Bonjour,
- je n'ai pas pus trouver de cours claire sur la création des fenêtre graphiques en langage C. Cela veut-il dire qu'il est quasi impossible d'en faire?
Il ne s'agit plus vraiment de C. Il n'y a rien de portable en C. Il faut se diriger vers Qt, GTK+, l'api windows, ...
Pour l'autre question, argc/argv permet de récupérer les arguments passés en paramètre du programme. Par exemple : nomProgramme 5 6, cela permetra de récupérer les valeurs 5 et 6 (argv[1]="5",argv[2]="6")
Mais ce prototype du main n'est pas obligatoire. Tu peux très bien écrire : int main(void), si tu ne comptes pas utiliser cette fonctionnalité.
Cdlt,
- je n'ai pas pus trouver de cours claire sur la création des fenêtre graphiques en langage C. Cela veut-il dire qu'il est quasi impossible d'en faire?
Il ne s'agit plus vraiment de C. Il n'y a rien de portable en C. Il faut se diriger vers Qt, GTK+, l'api windows, ...
Pour l'autre question, argc/argv permet de récupérer les arguments passés en paramètre du programme. Par exemple : nomProgramme 5 6, cela permetra de récupérer les valeurs 5 et 6 (argv[1]="5",argv[2]="6")
Mais ce prototype du main n'est pas obligatoire. Tu peux très bien écrire : int main(void), si tu ne comptes pas utiliser cette fonctionnalité.
Cdlt,
Les interfaces graphiques peuvent bien sûr se faire en C, il y en a même beaucoup !
Mais je ne sais pas vraiment dire lesquels sont les mieux...
Sinon, les arguments de la fonction main sont :
argc : le nombre de paramètres passés au programme
argv : le tableau des paramètres passés au programme (argv[0] est le nom du programme)
arge : le tableau des variables d'environnement (le dernier vaut NULL)
Tu peux par exemple tester ce code :
Mais je ne sais pas vraiment dire lesquels sont les mieux...
Sinon, les arguments de la fonction main sont :
argc : le nombre de paramètres passés au programme
argv : le tableau des paramètres passés au programme (argv[0] est le nom du programme)
arge : le tableau des variables d'environnement (le dernier vaut NULL)
Tu peux par exemple tester ce code :
int main(int argc, char* argv[], char* arge[]) { int i; for (i=0; i<argc; i++) printf("%s\n",argv[i]); printf("\n"); for (i=0; arge[i]!=NULL; i++) printf("%s\n",arge[i]); return 0; }La confiance n'exclut pas le contrôle