#1 Le 26/10/2021, à 16:53
- Yan44
[RÉSOLU] la fonction main n'est pas reconne a l'execution
Bonjour, voila j'ai repris mon ancien pc pour y faire des projet de la fac en c, cependant la méthode main ne fonctionne pas, par exemple pour le cultissime exemple hello world voila ce que j'ai :
#include <stdio.h>
int main() {
printf("jujujuj");
return 0;
}$ gcc hall.c
~$ ./hall.c
./hall.c: ligne 2: erreur de syntaxe près du symbole inattendu « ( »
./hall.c: ligne 2: `int main() {'Dernière modification par Yan44 (Le 26/10/2021, à 17:25)
Hors ligne
#2 Le 26/10/2021, à 16:56
- Nuliel

Re : [RÉSOLU] la fonction main n'est pas reconne a l'execution
Bonjour,
Il faut compiler avec gcc, puis lancer l'exécutable (appelé a.out par défaut), pas le code C.
Cela donne en donnant un nom à l'exécutable
gcc hall.c -o hall
./hallou
gcc hall.c
./a.outDernière modification par Nuliel (Le 26/10/2021, à 16:57)
[ poster un retour de commande ] [ poster une photo ]
Thinkpad x220, Dell latitude E7270 (i7 6600U, 16 Go de RAM, ...), Thinkstation E32 modifié: i5-4570, GTX 1060 6 Gb, 16 Gb de RAM, ...
Mon nouveau blog: nuliel.fr
En ligne
#3 Le 26/10/2021, à 16:59
- Yan44
Re : [RÉSOLU] la fonction main n'est pas reconne a l'execution
Merciiii
et aussi les option de gcc (-c -wall -wextra -ansi) ne fonctionne pas , il faut installer un paquet special?
Hors ligne
#4 Le 26/10/2021, à 17:01
- Yan44
Re : [RÉSOLU] la fonction main n'est pas reconne a l'execution
gcc –c –Wall –ansi –Wextra hello.c
gcc: error: –c: Aucun fichier ou dossier de ce type
gcc: error: –Wall: Aucun fichier ou dossier de ce type
gcc: error: –ansi: Aucun fichier ou dossier de ce type
gcc: error: –Wextra: Aucun fichier ou dossier de ce typeHors ligne
#5 Le 26/10/2021, à 17:06
- Nuliel

Re : [RÉSOLU] la fonction main n'est pas reconne a l'execution
gcc -Wall -Wextra test.cfonctionne bien, les W sont en majuscule.
Je te conseille de toujours compiler avec -Wall -Wextra, ça ressort plein de problèmes avant de passer du temps à debug.
En même temps, j'en profite pour dire que printf n'est pas le meilleur choix pour afficher hello world: printf est adapté lorsque tu veux remplacer des variables dans une chaîne prédéfinie (qu'on appelle chaîne de format, ou format string en anglais), par exemple
char[] str = "hello";
int i = 5;
printf("%d %s", i, str);Une fonction plus adaptée serait puts:
puts("Hello world");[ poster un retour de commande ] [ poster une photo ]
Thinkpad x220, Dell latitude E7270 (i7 6600U, 16 Go de RAM, ...), Thinkstation E32 modifié: i5-4570, GTX 1060 6 Gb, 16 Gb de RAM, ...
Mon nouveau blog: nuliel.fr
En ligne
#6 Le 26/10/2021, à 17:10
- nany

Re : [RÉSOLU] la fonction main n'est pas reconne a l'execution
Bonjour,
gcc –c –Wall –ansi –Wextra hello.c gcc: error: –c: Aucun fichier ou dossier de ce type gcc: error: –Wall: Aucun fichier ou dossier de ce type gcc: error: –ansi: Aucun fichier ou dossier de ce type gcc: error: –Wextra: Aucun fichier ou dossier de ce type
– ≠ -Hors ligne
#7 Le 26/10/2021, à 17:12
- Yan44
Re : [RÉSOLU] la fonction main n'est pas reconne a l'execution
gcc –Wall –Wextra hello.c
gcc: error: –Wall: Aucun fichier ou dossier de ce type
gcc: error: –Wextra: Aucun fichier ou dossier de ce typechez moi ca marche pas ca prend les options comme si c était de fichier
Hors ligne
#8 Le 26/10/2021, à 17:17
- Nuliel

Re : [RÉSOLU] la fonction main n'est pas reconne a l'execution
Comme l'a dit nany, – et - ce n'est pas la même chose. Tu n'utilises pas le bon tiret (- si j'appuie sur la touche 6 de mon pc portable, AltGr + Maj + ( -> – si je veux un tiret demi cadratin, AltGr + Maj + ’ -> — pour un tiret cadratin), c'est le tiret du 6 qu'il faut
Dernière modification par Nuliel (Le 26/10/2021, à 17:17)
[ poster un retour de commande ] [ poster une photo ]
Thinkpad x220, Dell latitude E7270 (i7 6600U, 16 Go de RAM, ...), Thinkstation E32 modifié: i5-4570, GTX 1060 6 Gb, 16 Gb de RAM, ...
Mon nouveau blog: nuliel.fr
En ligne
#9 Le 26/10/2021, à 17:21
- Yan44
Re : [RÉSOLU] la fonction main n'est pas reconne a l'execution
ahhh mince marcii beaucoup
Hors ligne