#1 Le 05/03/2008, à 16:55
- hibou99
[Résolu]programmation en C: question de base...
Salut à tous!
Une petite question:
Pourquoi rien ne s'affiche dans la console...?
#include <stdio.h>
int main()
{
printf("coucou\n");
return 0;
}
Le programme a été compilé avec la commande (sans aucune erreur ni warning)
gcc test.c -o test
et lancé avec la commande : "test"
Merci de votre aide!
#2 Le 05/03/2008, à 16:56
- m€rl1n
Re : [Résolu]programmation en C: question de base...
Haha je me suis fait avoir comme toi la première fois !
essaie de taper ./test dans ta console, au lieu de test, qui est une commande qui existe déjà sous unix.
D'ailleurs je sais pas à quoi elle sert !
Hors ligne
#3 Le 05/03/2008, à 16:59
- hibou99
Re : [Résolu]programmation en C: question de base...
Ah oui ça marche!
Pourquoi ça ne marche pas test?
Le ./ est censé indiquer le répertoire courant mais comme j'y suis déjà... je comprends pas non plus à quoi ça sert.
Si quelqu'un pouvait m'expliquer!
En tout cas merci!
#4 Le 05/03/2008, à 17:01
- JérémieR
Re : [Résolu]programmation en C: question de base...
Si tu tape test, il recherche dans le PATH mais il ne le trouve pas. Par contre si tu met le ./, il cherche directemtn dans le répertoire courant et du coup il le trouve.
Il me smeble que c'est ça.
Hors ligne
#5 Le 05/03/2008, à 17:02
- hibou99
Re : [Résolu]programmation en C: question de base...
Ah d'accord...
En tout cas merci et désolé parce que c'était écrit dans le premier post que j'avais pourtant lu...
Merci de votre aide!
#6 Le 05/03/2008, à 17:05
- Karl_le_rouge
Re : [Résolu]programmation en C: question de base...
man test !
Hors ligne
#7 Le 05/03/2008, à 17:08
- m€rl1n
Re : [Résolu]programmation en C: question de base...
En fait c'est pas exactement ça...
Il existe déjà une commande test sous unix (tapes man test dans un terminal).
Or quand tu ne tapes que test comme commande, il cherche grosso modo dans tout l'ordi ce qu'il doit faire en commençant par les instructions de base, et du coup il tombe d'abord sur le test original.
Par contre, si tu lui spécifies comme commande ./test, il cherche directement dans le répertoire courant, et là il ne se gourre pas sur tes intentions .
Hors ligne
#8 Le 05/03/2008, à 17:09
- JérémieR
Re : [Résolu]programmation en C: question de base...
Voilà à peu près le fond de ma pensée.
Hors ligne
#9 Le 05/03/2008, à 17:21
- Le Farfadet Spatial
Re : [Résolu]programmation en C: question de base...
Salut à tous !
En fait c'est pas exactement ça...
Il existe déjà une commande test sous unix (tapes man test dans un terminal).
Or quand tu ne tapes que test comme commande, il cherche grosso modo dans tout l'ordi ce qu'il doit faire en commençant par les instructions de base, et du coup il tombe d'abord sur le test original.Par contre, si tu lui spécifies comme commande ./test, il cherche directement dans le répertoire courant, et là il ne se gourre pas sur tes intentions
.
En fait, ce n'est toujours pas tout à fait correct ! Il faut faire la synthèse de JérémieR et m€rl1n --- ce pseudo n'est pas seulement indicible, il est également intapable !
Donc, le fonctionnement standard par défaut d'UNIX --- en admettant que ni l'utilisateur, l'administrateur ou le fournisseur de la distribution ne l'a changé --- est le suivant : si tu tapes simplement
$ test
alors le système d'exploitation consulte la variable d'environnement $PATH pour y extraire les répertoires dans lesquels il doit chercher l'exécutable. Si ton répertoire courant n'y est pas ou s'il y est référencé après celui où se trouve l'exécutable de la commande UNIX test, alors il n'exécutera pas ton programme, mais la commande UNIX test. En revanche, si tu tapes
$ ./test
alors le système n'utilisera pas la variable $PATH et se contentera de chercher l'exécutable nommé « test » dans le répertoire courant.
À bientôt.
Le Farfadet Spatial
Hors ligne
#10 Le 05/03/2008, à 17:26
- m€rl1n
Re : [Résolu]programmation en C: question de base...
En fait c'est toujours pas exactement ça ...
En fait si c'est exactement ça . Et pour mon pseudo, à l'origine c'était m€rl1n, mais les problèmes d'affichages des caractères spéciaux sur le forum l'ont transformé en ce m€rl1n bizarre...
Ps : il faudrait passer le sujet en résolu.
Dernière modification par m€rl1n (Le 05/03/2008, à 17:27)
Hors ligne