CONNEXION
  • RetourJeux
    • Sorties
    • Hit Parade
    • Les + populaires
    • Les + attendus
    • Soluces
    • Tous les Jeux
    • Gaming
  • RetourActu Gaming
    • News
    • Astuces
    • Tests
    • Previews
    • Toute l'actu gaming
  • RetourBons plans
    • Bons plans
    • Bons plans Smartphone
    • Bons plans Hardware
    • Bons plans Image et Son
    • Bons plans Amazon
    • Bons plans Cdiscount
    • Bons plans Decathlon
    • Bons plans Fnac
    • Tous les Bons plans
  • RetourJVTech
    • Actus High-Tech
    • Intelligence Artificielle
    • Smartphones
    • Mobilité urbaine
    • Hardware
    • Image et son
    • Tutoriels
    • Tests produits High-Tech
    • Guides d'achat High-Tech
    • JVTech
  • RetourCulture
    • Actus Culture
    • Culture
  • RetourVidéos
    • A la une
    • Gaming Live
    • Vidéos Tests
    • Vidéos Previews
    • Gameplay
    • Trailers
    • Chroniques
    • Replay Web TV
    • Toutes les vidéos
  • RetourForums
    • Hardware PC
    • PS5
    • Switch 2
    • Xbox Series
    • Switch
    • Pokemon pocket
    • FC 25 Ultimate Team
    • League of Legends
    • Tous les Forums
  • PC
  • PS5
  • Xbox Series
  • Switch 2
  • PS4
  • One
  • Switch
  • iOS
  • Android
  • MMO
  • RPG
  • FPS
En ce moment Genshin Impact Valhalla Breath of the wild Animal Crossing GTA 5 Red dead 2
Liste des sujets

[C++] Probleme

Adrezo
Adrezo
Niveau 9
20 mai 2004 à 17:22:22

salut
JY², j´espere que tu vas pouvoir, m´aider, voila j´ai trouver des tutos ( dont ceu sur ton site) qui disent : cin > > M
fait que ce ke l´on marquera ira dans M, mais ca marche pas, il met :
" error before " >""
help me please

dnob700
dnob700
Niveau 10
20 mai 2004 à 17:24:49

t´as inclu iostream.h ?

il faut qu´au début de ton programme ( avant la fonction main) tu mette la ligne :

  1. include < iostream.h>
Adrezo
Adrezo
Niveau 9
20 mai 2004 à 17:30:04

qu´estce que tu apelles la fonction main ?

freedix
freedix
Niveau 10
20 mai 2004 à 17:35:53

La fonction main, c´est la fonction principale de ton programme :

Tu as bien :

int main()
{
/ /instruction

return 0;
}

ou :

void main()
{
/ /instruction
}

?

Adrezo
Adrezo
Niveau 9
20 mai 2004 à 17:37:25

ben non . ..

Adrezo
Adrezo
Niveau 9
20 mai 2004 à 17:38:00

oh yeah, ca marche merci ! !!

JeanYvesYves
JeanYvesYves
Niveau 10
23 mai 2004 à 21:26:58

Désolé, j´étais absent :)

MrGoTo
MrGoTo
Niveau 8
24 mai 2004 à 15:15:53

Dans le livre que j´ai qui respecte la norme ANSI du C ils ne typent pas main. Vous en pensez quoi?

JeanYvesYves
JeanYvesYves
Niveau 10
24 mai 2004 à 15:32:47

ah ? l´ancienne ( vieille norme du C) qui, comme le pascal, te permet de te dispenser de main ainsi :

void mafonction(void)
{
. ...
}

{
/ * corps du main */
}

un corps de {} non déclaré était le main.
Plus aucun compilo n´acceptera cela...
Remarque aussi que les fonctions sans parametres devaient etre déclarées ainsi :

fonction(void)

cependant, cette derniere syntaxe est toujours acceptée.

JeanYvesYves
JeanYvesYves
Niveau 10
24 mai 2004 à 15:33:36

adrezo >

petite remarque que tu as du voir tout seul :

le forum de JV met des espaces quand tu tapes > >
( entre les 2 > )
si tu copies tel quel dans un compilo, ça ne marche pas :)

MrGoTo
MrGoTo
Niveau 8
24 mai 2004 à 15:43:04

eux ils mettent
main()
{
youplaboom();
}

MrGoTo
MrGoTo
Niveau 8
24 mai 2004 à 15:43:47

Et ça compile ( gcc, visual aussi je pense)

JeanYvesYves
JeanYvesYves
Niveau 10
24 mai 2004 à 15:48:55

ah ok, pas de type de retour donc :)
ce dont je te parlais est vrai vieux ! mais C plus du tout de l´ANSI :)

je ne savais pas que tu pouvais ne rien renvoyer derriere main ! C ANSI ça ?
ma foi :)

Si ça marche tant mieux !
mais bon, je pense qu´il est + propre de renvoyer un truc :) meme s´il n´est plus guere utilisé par l´OS.

kufa
kufa
Niveau 9
24 mai 2004 à 16:51:16

Le coup du main n a rien avoir ( a ma connaissance) avec la norme ansi: l extern c main est utilise par les startup objects, mais ca depends bcp des platformes, et rien ne t empeche de refaire ton startup sans utiliser les libraries standards.

dnob700
dnob700
Niveau 10
24 mai 2004 à 17:55:18

de toutes facons, si main ne renvoie rien, l´exécutable renvoie quand même zéro. Il suffit de demander au système après l´exécution pour s´en conveincre ( on peut mettre autre chose dans la pile juste avant pour voir qu´après, il y a un zéro).

Je ne sais pas si c´est le compilateur qui dans tous les cas va mettre un zero sur la pile ou si c´est le système d´exploitation qui fait ca.

Altonfrere
Altonfrere
Niveau 10
24 mai 2004 à 19:14:54

" Le coup du main n a rien avoir ( a ma connaissance) avec la norme ansi"

il semblerait que si :

http://www.research.att.ccom/~bs/bs_faq2.html#void-main

( ...)

Can I write " void main()"?
The definition
void main() { / * . .. */ }

is not and never has been C++, nor has it even been C. See the ISO C++ standard 3.6.1[2] or the ISO C standard 5.1.2.2.1. A conforming implementation accepts
int main() { / * . .. */ }

and
int main(int argc, char* argv[]) { / * . .. */ }

( ...)

encore une liberté des compilos :)

kufa
kufa
Niveau 9
24 mai 2004 à 19:39:38

Je cite: " it is implementation-defined whether a program in freestanding environement is required to define a main function".

C´est normal, c est pas a la norme de determiner comment gerer quelque chose qui est platform- dependant.

dnoob: ca depends de ton systeme, de ton compilo, de tes parametres d optimisation, des dernieres commandes dans ton main..

Sous forums
  • Aide à l'achat Mac
  • Macintosh
  • Création de sites web
  • Création de Jeux
  • Linux
  • Programmation
  • Internet
  • Steam Deck
  • Hardware
La vidéo du moment