Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Programme en C et sortie à l'écran

50 réponses
Avatar
Noex
Bonjour,

Je compile le petit programme test.c ci-dessous:

--------

#include <stdio.h>

int main()
{
printf("Salut !\n" );
return 0;
}

---------

avec gcc -O test.c -o test

Que je lance depuis la fenetre du terminal, mais rien ne s'affiche. Ou
est le problème svp ?

Merci.

10 réponses

1 2 3 4 5
Avatar
Noex
Noex a formulé la demande :


Que je lance depuis la fenetre du terminal, mais rien ne s'affiche. Ou est le
problème svp ?

Merci.



J'ai pigé l'erreur, en fait je dois lancer la programme compilé avec le
chemin complet.
Avatar
Marc
Noex a écrit :
Noex a formulé la demande :


Que je lance depuis la fenetre du terminal, mais rien ne s'affiche. Ou
est le problème svp ?

Merci.



J'ai pigé l'erreur, en fait je dois lancer la programme compilé avec le
chemin complet.




Salut,

petite explication si le nom donné est le vrai :
:~$ type test
test is a shell builtin

Donc à moins d'utiliser la syntaxe ./test ce n'est pas TON programme que
tu appellera !

Le mieux est de changer le nom du binaire pour éviter ce petit problème.

Marc.
--
L'I2C sous Windows
http://perso.club-internet.fr/mbouget/index.html
Avatar
Nicolas George
Tu as trouvé le problème, et on a donné les détails. Je corrige le style :

Noex wrote in message <4a22183c$0$17109$:
int main()



int main(void)

Sinon, tu déclares main sans prototype.

{
printf("Salut !n" );



L'indentation, c'est bien.

return 0;
}



avec gcc -O test.c -o test



Compiler avec au moins :

gcc -Wall -Wextra -stdÉ9

Éventuellement, ajouter -D_XOPEN_SOURCE`0. Et -O2 est plus commun que -O
tout court.
Avatar
Noex
Marc a écrit :
Noex a écrit :
Noex a formulé la demande :


Que je lance depuis la fenetre du terminal, mais rien ne s'affiche. Ou est
le problème svp ?

Merci.



J'ai pigé l'erreur, en fait je dois lancer la programme compilé avec le
chemin complet.




Salut,

petite explication si le nom donné est le vrai :
:~$ type test
test is a shell builtin

Donc à moins d'utiliser la syntaxe ./test ce n'est pas TON programme que tu
appellera !

Le mieux est de changer le nom du binaire pour éviter ce petit problème.

Marc.



Et oui! Je me suis douté après coup que test devais exister, pas de
chance :(
Donc maintenant c'est 'testa'. Et je le lance avec le chemin complet,
ça marche.
Avatar
Vivien Moreau
Noex a écrit :

Marc a écrit :
Noex a écrit :
Noex a formulé la demande :


Que je lance depuis la fenetre du terminal, mais rien ne
s'affiche. Ou est le problème svp ?

Merci.



J'ai pigé l'erreur, en fait je dois lancer la programme compilé
avec le chemin complet.




Salut,

petite explication si le nom donné est le vrai :
:~$ type test
test is a shell builtin

Donc à moins d'utiliser la syntaxe ./test ce n'est pas TON
programme que tu appellera !

Le mieux est de changer le nom du binaire pour éviter ce petit problème.

Marc.



Et oui! Je me suis douté après coup que test devais exister, pas de
chance :(
Donc maintenant c'est 'testa'. Et je le lance avec le chemin complet,
ça marche.



Bah du coup tu n'es plus obligé de le lancer avec le chemin absolu, vu
qu'il qu'il n'y aura plus de conflit avec les programmes de ton PATH.

Un simple chemin relatif de type ./testa suffit. :-)

--
Vivien Moreau / Tuxicomane
Avatar
Nicolas George
Vivien Moreau wrote in message :
Bah du coup tu n'es plus obligé de le lancer avec le chemin absolu, vu
qu'il qu'il n'y aura plus de conflit avec les programmes de ton PATH.

Un simple chemin relatif de type ./testa suffit. :-)



Un chemin relatif marche très bien pour ./test, évidemment.
Avatar
Vivien Moreau
Nicolas George <nicolas$ a écrit :

Vivien Moreau wrote in message :
Bah du coup tu n'es plus obligé de le lancer avec le chemin absolu, vu
qu'il qu'il n'y aura plus de conflit avec les programmes de ton PATH.

Un simple chemin relatif de type ./testa suffit. :-)



Un chemin relatif marche très bien pour ./test, évidemment.



Euh, bah... Ouais.

Voilà ce que c'est de poster sur Usenet sans café.

--
Vivien Moreau / Tuxicomane
Avatar
Alain Montfranc
Noex a écrit

avec gcc -O test.c -o test




Pourquoi taper tant de caracteres inutiles ? "make test" suffit :-D
Avatar
Nicolas George
Alain Montfranc wrote in message :
Pourquoi taper tant de caracteres inutiles ? "make test" suffit :-D



Pour obtenir l'équivalent, make CFLAGS=-O test est au minimum nécessaire.
Avatar
Fabien LE LEZ
On 31 May 2009 06:48:17 GMT, Nicolas George :

Et -O2 est plus commun que -O tout court.



Le paramètre d'optimisation doit être spécifique pour chaque
programme. Par exemple, j'ai un programme (en C++) qui est très rapide
avec -O1, mais beaucoup plus lent avec -O2, -O3 ou pas de -O.
1 2 3 4 5