Fedora-Fr - Communauté francophone Fedora - Linux

Communauté francophone des utilisateurs de la distribution Linux Fedora.

  

Dernière news : Fedora 34 n'est plus maintenu

#1 11/12/2009 08:53:46

shellwalker
Sombrero
Lieu : Valence
Inscription : 14/11/2009
Messages : 206

Vers le C++ et au-delà =)

Salut à tous !

J'ai débuté il y a quelques années en programmation avec Ruby, maintenant j'ai décidé de me lancer vers le C++ ! J'ai acquis un bouquin et récupéré plusieurs tutoriaux pour me lancer dans le langage, mais...

>     Premièrement : Quels paquets dois-je installer sur ma F11 pour avoir le nécessaire C++ ?
>     Deuièmement : Imaginons que je sois dans le répetoire de mon script, dans un terminal root... Quelle commande entrer pour le tester, pour le compiler ?

Je faisais tout ça avant, tout seul comme un grand ( hammer ) mais je ne l'ai encore jamais fait en C++ !

Merci à tous pour vos réponses idea


“Lorsque vous avez éliminé l’impossible, ce qui reste, si improbable soit-il, est nécessairement la vérité.”
- Arthur Conan Doyle

Hors ligne

#2 11/12/2009 09:20:22

pmarion
Pacsé avec le forum
Lieu : 95000 CERGY
Inscription : 14/11/2006
Messages : 8 032

Re : Vers le C++ et au-delà =)

yum groupinstall 'Outils de développement'
va t'installer c, c++ et tout ce qui est nécessaire pour compiler .

man gcc
ou
man g++
te donnera la syntaxe de base de l'appel du compilateur gcc/g++

Passer de ruby à C++ est un sacré bond en avant, bon courage pour la suite

Dernière modification par pmarion (11/12/2009 09:22:01)

Hors ligne

#3 11/12/2009 09:47:45

Refuznik
Membre
Inscription : 31/01/2007
Messages : 8 084

Re : Vers le C++ et au-delà =)

Deuièmement : Imaginons que je sois dans le répetoire de mon script, dans un terminal root... Quelle commande entrer pour le tester, pour le compiler ?

Pourquoi vouloir compiler en root :)

Hors ligne

#4 11/12/2009 12:56:44

cedou
Membre
Inscription : 27/10/2009
Messages : 539

Re : Vers le C++ et au-delà =)

Si tu as fait un programme en c:
Pour le compiler : gcc main.c -o test
Si tu l' as fait en c++ :
Pour le compiler : g++ main.cpp -o test

un fichier "test" va etre crée apres la compilation
pour lancer ton programme : ./test

Dernière modification par cedou (11/12/2009 13:03:02)

Hors ligne

#5 11/12/2009 18:07:35

shellwalker
Sombrero
Lieu : Valence
Inscription : 14/11/2009
Messages : 206

Re : Vers le C++ et au-delà =)

Merci à tous !
C'est tout ce qu'il me fallait tongue !
C'est en effet un sacré bond en avant, mais... je veux en faire mon métier ! J'ai forcément l'obligation d'y mettre du mien big_smile !


“Lorsque vous avez éliminé l’impossible, ce qui reste, si improbable soit-il, est nécessairement la vérité.”
- Arthur Conan Doyle

Hors ligne

#6 11/12/2009 18:10:02

shellwalker
Sombrero
Lieu : Valence
Inscription : 14/11/2009
Messages : 206

Re : Vers le C++ et au-delà =)

roll Mon cher kwrite et moi allons prendre soin de sauver tout ça dans un petit fichier, au cas où j'oublierais lol !


“Lorsque vous avez éliminé l’impossible, ce qui reste, si improbable soit-il, est nécessairement la vérité.”
- Arthur Conan Doyle

Hors ligne

#7 11/12/2009 20:15:05

shellwalker
Sombrero
Lieu : Valence
Inscription : 14/11/2009
Messages : 206

Re : Vers le C++ et au-delà =)

Houla houla !
Après le téléchargement du groupe de paquets (101 paquets on été ajoutés big_smile ), je lance :

$ g++ HelloWorld-Notme.cpp -o test

Et ça me met ça ! Comme si le C++ n'avait pas été installé ! A la limite iostream je veux bien, mais see out (cout) c'est quand même la sortie de base hmm :

HelloWorld-Notme.cpp:1:22: error: iostream.h: No such file or directory
HelloWorld-Notme.cpp: In function 'int main()':
HelloWorld-Notme.cpp:4: error: 'cout' was not declared in this scope
HelloWorld-Notme.cpp:5: error: 'system' was not declared in this scope

Désolé les gens, mais j'ai encore besoin d'aide hammer !


“Lorsque vous avez éliminé l’impossible, ce qui reste, si improbable soit-il, est nécessairement la vérité.”
- Arthur Conan Doyle

Hors ligne

#8 11/12/2009 20:16:45

shellwalker
Sombrero
Lieu : Valence
Inscription : 14/11/2009
Messages : 206

Re : Vers le C++ et au-delà =)

Voici la source de ce Hello World, ce n'est pas le mien, j'ai fait un copier-coller d'un tuto parce que j'avais la flemme d'en écrire un... tongue :

#include "iostream.h"
int main()
{
   cout<<"Hello World!!";
   system("pause");//pour que la fenêtre ne quitte pas seule
}

“Lorsque vous avez éliminé l’impossible, ce qui reste, si improbable soit-il, est nécessairement la vérité.”
- Arthur Conan Doyle

Hors ligne

#9 11/12/2009 20:18:16

shellwalker
Sombrero
Lieu : Valence
Inscription : 14/11/2009
Messages : 206

Re : Vers le C++ et au-delà =)

Et après vérification, je crois pourtant que l'essentiel est installé ! Voilà :

$ g++ --version
g++ (GCC) 4.4.1 20090725 (Red Hat 4.4.1-2)
Copyright (C) 2009 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

“Lorsque vous avez éliminé l’impossible, ce qui reste, si improbable soit-il, est nécessairement la vérité.”
- Arthur Conan Doyle

Hors ligne

#10 11/12/2009 20:31:40

Pikachu_2014
Retraité
Lieu : Boulogne-Billancourt
Inscription : 16/06/2005
Messages : 11 334
Site Web

Re : Vers le C++ et au-delà =)

Bonsoir,

1) remplace ton
      #include "iostream.h"
    par
      #include <iostream>

2) rajoute un
       using namespace std;
    après tes includes, sinon ton "cout" ne sera pas reconnu à moins de l'appeler "std::cout"

3) si tu veux appeler la fonction system(), ajoute l'include suivant :
      #include <cstdlib>

4) la commande "pause" est typique de DOS ; ton
      system("pause");
    a peu de chance de fonctionner. Remplace-la par une autre commande plus familière sous Unix comme "ls" par exemple.

Je crois reconnaître des incongruités du Site du Zéro dans le code que tu as posté. Me trompe-je ?
Si tu veux te lancer avec sérénité dans C++, je te conseille avant tout de te familiariser avec la programmation orientée objet, sans quoi tu risquerais de gâcher C++ pour faire du pseudo-C. Mais si tu as déjà fait du Ruby, peut-être as-tu déjà touché ce concept. Et surtout de trouver un autre cours que celui que tu as dégoté... Il y a eu une discussion à propos de bonnes références C++ il y a 3-4 ans je crois sur le forum, je t'invite à faire une recherche sur les termes "livres C++" ou approchant.


« …elle excitait si puissamment le désir, que je devins alors très incrédule sur sa vertu. »
À propos de Fœdora, dans la Peau de Chagrin (Balzac) roll

Hors ligne

#11 11/12/2009 23:40:04

shellwalker
Sombrero
Lieu : Valence
Inscription : 14/11/2009
Messages : 206

Re : Vers le C++ et au-delà =)

Merci

En effet, j'ai déjà expérimenté les classes et fonctions sous Ruby, c'est ce côté OO qui m'a plu.
Ensuite, je me répète : je n'ai pas pris de cours ! Ceci est un copier-coller parce que j'avais la flemme de taper un hello world pour tester g++... Sinon, j'ai récemment eu comme petit cadeau un livre sur le C++... de presque 350 pages roll !

Donc pas de problème de ce côté, d'ailleurs quand je regarde le livre, on y place systématiquement les include et using que tu as cités... j'ai copié-collé le truc d'un boulet couillon n00b kikoolol novice !


“Lorsque vous avez éliminé l’impossible, ce qui reste, si improbable soit-il, est nécessairement la vérité.”
- Arthur Conan Doyle

Hors ligne

#12 11/12/2009 23:41:20

Pikachu_2014
Retraité
Lieu : Boulogne-Billancourt
Inscription : 16/06/2005
Messages : 11 334
Site Web

Re : Vers le C++ et au-delà =)

smile
Mes excuses dans ce cas, et tous mes voeux de courage pour ton initiation.
Sans être indiscret, de quel livre s'agit-il ?


« …elle excitait si puissamment le désir, que je devins alors très incrédule sur sa vertu. »
À propos de Fœdora, dans la Peau de Chagrin (Balzac) roll

Hors ligne

#13 11/12/2009 23:44:18

cedou
Membre
Inscription : 27/10/2009
Messages : 539

Re : Vers le C++ et au-delà =)

tiens un très bon tuto pour le c : http://www.siteduzero.com/tutoriel-3-14 … -en-c.html
c++ : http://www.siteduzero.com/tutoriel-3-11 … -en-c.html

Ce site est super smile

Dernière modification par cedou (11/12/2009 23:44:32)

Hors ligne

#14 11/12/2009 23:51:38

Pikachu_2014
Retraité
Lieu : Boulogne-Billancourt
Inscription : 16/06/2005
Messages : 11 334
Site Web

Re : Vers le C++ et au-delà =)

cedou a écrit :

Mouais -_-
Un site qui encourage l'utilisation dès le début de l'initiation d'un IDE, donc qui masque toute la chaîne de compilation, perd beaucoup en pédagogie et crédibilité. On ne peut comprendre un langage comme C, et a fortiori C++, sans avoir une idée claire des mécanismes de compilation en jeu.
Les seuls outils qu'un débutant devraient avoir à portée de main est son éditeur de texte favori et un terminal pour lancer son compilateur. Libre à lui ensuite d'utiliser un IDE, efficace pour de gros projets il est vrai, une fois qu'il aura assimilé le langage et qu'il se lancera alors dans des projets de développement plus ambitieux.


« …elle excitait si puissamment le désir, que je devins alors très incrédule sur sa vertu. »
À propos de Fœdora, dans la Peau de Chagrin (Balzac) roll

Hors ligne

#15 12/12/2009 00:12:15

cedou
Membre
Inscription : 27/10/2009
Messages : 539

Re : Vers le C++ et au-delà =)

En fait j' ai suivi leur explications et les exos qu' il propose mais j' utilse gcc et g++.
Je disai juste qu' il détaillait bien les bases du c tongue

Dernière modification par cedou (12/12/2009 00:53:48)

Hors ligne

#16 13/12/2009 11:28:38

BBT
Membre
Inscription : 01/07/2008
Messages : 130

Re : Vers le C++ et au-delà =)

Ma référence pour le C++ : B. Stroustrup - The C++ Programming Language
Ce n'est pas le plus digeste, ce n'est pas le plus facile pour le débutant
et pourtant je pense que c'est le meilleur outil pour apprendre le C++ par le bon bout.

Sinon, je te conseille de te mettre sérieusement au C,
prendre un peu d'expérience et rajouter progressivement les concepts du C++
en ne te contentant pas juste de la syntaxe,
mais de savoir pour chaque élément nouveau du langage
- à quel besoin cela répond (c'est à dire comment j'obtient la même chose en C, et à quel point c'est pénible)
- quelles sont les mécanismes masqués par le compilateur qui rendent cet ajout au langage possible.

Et aussi, écrire du code c'est bien (c'est même nécessaire ;) ), mais n'oublie pas de lire aussi du code,
ça t'évitera de réinventer toutes les techniques de programmation.
Si tu veux continuer dans les métiers de l'informatique c'est au moins aussi important
de pouvoir relire du code écrit par quelqu'un d'autre que d'écrire le sien.

Hors ligne

Pied de page des forums