Dévelopement en C++ sur Xcode

Jermy06

Membre enregistré
24 Septembre 2006
5
0
Bonjour à tous,

Je suis en 1ere année de BTS Informatique et en vu des mes cours, je me suis installé Xcode pour faire du C++ entre autre. Après avoir compilé mon 1er programme en C++, je me suis aperçu que certaines commandes étaient inconnues ou la syntaxe d'exécution est différente. Le programme n'a aucune erreur (je l'ai fait vérifié auprès de mes professeurs). Es il existe un catalogue avec toutes les syntaxe en C++ ? connaissez vous quelques équivalence ?
Je m'excuse si je ne suis pas très très clair mais je début en C++ donc j'ai un peu de mal a m'y faire.
Merci d'avance pour votre aide ;)

Jermy
 
Bonjour et bienvenue sur Mac Gé :coucou:

Généralement, quand il y a des problèmes de compilations, c'est qu'on essaye d'utiliser des fonctions ou des syntaxes non standards, du type de celles qu'on trouve chez Microsoft.

Le mieux serait de nous dire exactement de quoi il retourne.

Aurais-tu un court exemple à nous soumettre ?

Fais-nous un copier-coller de ton code entre deux balises CODE (bouton "#" de l'éditeur de messages).
 
C'est bizare ce que tu dis ! Si ton programme est correct ya pas de raisons qu'il ne compile pas avec Xcode. Ca donne quoi comme message d'erreur ?

Perso j'ai eu mon mac récement et j'ai pas pu compiler un programme car X11 n'était pas installé. Mais sinon aucun problème.

Avec le terminal ca compile pas non plus ?
 
Que je vous explique, j'ai installé Xcode et X11 aussi.
Dans Xcode j'ai fait créer un nouveau projet, et j'ai sélectionné la seule option qui me proposait de faire du C++ voici ce que j'ai mis :

Bloc de code:
#include <iostream.h>

int main () {
    int valeur, essai, nbre = 1 ;
	
	cout<<"entrer le nombre... " ;
	cin>>valeur ;
	cout<<"Entrer un essai = " ;
	cin>>essai ;
	while (essai != valeur) {
		if (essai > valeur)
			cout<<"Trop grand !" ;
		else
			cout<<"Trop Petit !" ;
		cout<<"Entrer un nouvel essai =" ;
		cin>>essai ;
		nbre++ ;
	}
	cout<<"Vous avez trouvé en "<<nbre<<" fois";
}
Ce code est la version que j'ai améliorer pour quelle puisse fonctionner, avant d'arriver a cette version du programme, lorsque je faisai "build and Go" il me disais que la fonction "Clrscr" pour effacer l'écran été inconnue et les lignes : "cout<<"entrer le nombre..." ; cin>>valeur ;" étaient fausses. J'avais pouratnt simplement copier le programme que mon professeur m'avait donné.
Es ce que c'est la fonction de Xcode "Build and Go" qui ne marche pas très bien ?
Merci pour vos réponses :)

Jermy
 
Voici un correctif possible:
Bloc de code:
#include <iostream>

int main () {
    int valeur, essai;
	int nbre = 1 ;
	
	std::cout << "entrer le nombre... " ;
	std::cin >> valeur ;
	std::cout << "Entrer un essai = " ;
	std::cin >> essai ;
	while (essai != valeur) {
		if (essai > valeur)
			std::cout << "Trop grand !" ;
		else
			std::cout << "Trop Petit !" ;
		std::cout << "Entrer un nouvel essai =" ;
		std::cin >> essai ;
		nbre++ ;
	}
	std::cout << "Vous avez trouv&#233; en " << nbre << " fois";
	return 0;
}
 
Ton prof a oublié de te parler des namespaces ou espaces de nommage.
Les classes cout, cin, … sont dans le namespace std. Il faut donc soit dire au compilo que tu vas utiliser ce namespace en mettant après les includes:
Bloc de code:
using namespace std;
soit préfixer tes utilisations par "std::" :
Bloc de code:
std::cout<<"entrer le nombre... " ;
Quant aux instructions inconnues c'est tout simplement qu'elles ne sont pas dans la norme : Visual C++ c'est du M$ par de l'ANSI. :D
 
Merci a vous deux je commence a y voir plus clair a ce sujet ^^
Vous ne savez pas si il existe un répertoire quelque chose du genre où les commandes sont référencées ? Je cherche la commande pour effacer l'écran.
Une fois que mon programme est terminé, pour le visualiser sans passer par Xcode je peux utiliser la Console ?
Encore une fois je vous remercie pour vos réponses, ce forum est très sympa ^^

Jermy
 
[MODE COUP-DE-GEULE ON]

Au passage:

Je trouve vraiment honteux que l'Education Nationale mette au programme des mati&#232;res li&#233;es &#224; l'informatique l'enseignement exclusif des outils Microsoft, en les pr&#233;sentant comme des logiciels standards et universels.

Au lieu d'apprendre &#224; utiliser un compilateur, un SGBD, un tableur ou un traitement de texte, on n'apprend plus maintenant qu'&#224; utiliser Visual C++, Access, Excel et Word.

Depuis la visite de Bill Gates &#224; Chirac, l'Education Nationale est devenue une v&#233;ritable fabrique de clients Microsoft dociles et cr&#233;tins :eek: !

Heureusement, il reste encore des profs clairvoyants, et des plateformes qui n'ont pas encore &#233;t&#233; mang&#233;es par M$.


[MODE COUP-DE-GEULE OFF]




;)
 
  • J’aime
Réactions: p4bl0
Vous ne savez pas si il existe un répertoire quelque chose du genre où les commandes sont référencées ?
Tu trouveras une référence ici.
Je cherche la commande pour effacer l'écran.
Il n'y a pas de commande C pour effacer l'écran, il faut passer par une commande système Unix - qui bien sur ne marchera pas sous Windows. Bienvenu dans un monde d'incompatibilité. :D
Une fois que mon programme est terminé, pour le visualiser sans passer par Xcode je peux utiliser la Console ?
Oui mais de toute façon quand tu le lances sous XCode il démarre dans une console.
 
[MODE COUP-DE-GEULE ON]
Je trouve vraiment honteux que l'Education Nationale mette au programme des matières liées à l'informatique l'enseignement exclusif des outils Microsoft, en les présentant comme des logiciels standards et universels.
+1 :up:
D'autant que dans le monde du travail, c'est loin d'être le cas. Ca fait des années que je code et je n'ai jamais écrit une seule ligne en VC++. Et depuis quelques temps, Linux (donc Unix) est de plus en plus demandé. Il faudrait que l'éducation nationale se mette à la page et surtout fournisse de vrais professeurs d'informatique et pas des mécaniciens ou des électroniciens reconvertis et qui ne savent même ce qu'est un namespace. :mouais: Combien voit-on de jeunes diplômés arrivés dans le monde du travail avec des connaissances en retard d'une ou deux technologies ou normes. :mouais:
 
Vous ne savez pas si il existe un répertoire quelque chose du genre où les commandes sont référencées ? Je cherche la commande pour effacer l'écran.
J'ai peur qu'une telle commande ne soit spécifique au système (que dire d'un effacement d'écran quand la sortie standard se fait sur une line printer ?).


Une fois que mon programme est terminé, pour le visualiser sans passer par Xcode je peux utiliser la Console ?
Affirmatif. Tu peux cliquer directement sur le fichier exécutable, ou lancer la console (qui s'appelle Terminal) et taper le nom du programme.

Si ton programme s'appelle "toto", l'exécutable en mode debug se trouvera dans "toto/build/Debug/". Attention: pour l'exécuter à partir de la console, il faudra absolument spécifier un chemin, soit au minimum le dossier courant ("./toto").
 
Je suis tout a fait d'accord avec toi.
Mon oncle est directeur d'une école primaire sur Nice. il y a une dizaine d'année le parc informatique de cette école été des Mac. Lorsqu'il a fallu renouveler le parc informatique la mairie n'a pas laissé le choix que de prendre des horribles tours avec Windaube. Depuis il y a des problèmes tout les deux jours avec le parc (machines qui bug, problème de connexion a Internet et pour couronner le tout, la marie ne s'est pas enmer*** a installer un réseau digne de ce nom, elle a tout mis en CPL une fois par semaine il faud chager un ou deux adaptateur car ils ont grillés...)... Il serai temps que le gouvernement vois autre chose que Billou et qu'il n'y a pas que office dans la vie, il y a tellement de choses a explorer dans le monde de l'informatique et il est dommage que nos bambins s'arrête qu'a la vision de Microsoft de ce monde. Je connais apple depuis longtemps mais je n'avais jamais eu l'occasion d'utiliser un Mac au quotidien, depuis que j'ai mon MacBook je me demande comment j'ai fait pour passer autant de temps sur Windaude entre les bugs, les problèmes de sécurité et les drivers, c'est vraiment l'horreur...
Bon je vais m'arrêter là sinon je vais vous faire un roman mais j'ai quelque chose qui résume bien ce que je pense : Cliquez ici
Have fun ;) !

Jermy
 
Euh moi suis en fac master 2 info et j'ai jamais codé sous windows.

Et c'est pas forcément bien non plus :eek: J'ai un pote qui a failli être recalé à une école pour ca. Finalement, ils l'ont pris et lui ont fait suivre un stage intensif pour voir les outils de développement sous windows.
 
Euh moi suis en fac master 2 info et j'ai jamais codé sous windows.

Et c'est pas forcément bien non plus :eek: J'ai un pote qui a failli être recalé à une école pour ca. Finalement, ils l'ont pris et lui ont fait suivre un stage intensif pour voir les outils de développement sous windows.
Les facs sont les derniers bastions qui résistent encore à l'envahisseur, *nix oblige.

Entendons-nous. Je ne suis pas contre l'enseignement de Windows et des logiciels M$ à l'école. Comme ça représente la plus grosse part de marché actuelle, il serait suicidaire de faire l'impasse là-dessus. Mais de là à ne faire faire que ça, et agir comme s'il n'y avait rien d'autre... !
 
[MODE COUP-DE-GEULE ON]

Au passage:

Je trouve vraiment honteux que l'Education Nationale mette au programme des matières liées à l'informatique l'enseignement exclusif des outils Microsoft, en les présentant comme des logiciels standards et universels.

Au lieu d'apprendre à utiliser un compilateur, un SGBD, un tableur ou un traitement de texte, on n'apprend plus maintenant qu'à utiliser Visual C++, Access, Excel et Word.

Depuis la visite de Bill Gates à Chirac, l'Education Nationale est devenue une véritable fabrique de clients Microsoft dociles et crétins :eek: !

Heureusement, il reste encore des profs clairvoyants, et des plateformes qui n'ont pas encore été mangées par M$.


[MODE COUP-DE-GEULE OFF]




;)

bien d'accord
quoique dans mon iut c'est fini le monde microsoft...
a nous le openoffice

il nous reste just le access et vb express
 
Entendons-nous. Je ne suis pas contre l'enseignement de Windows et des logiciels M$ à l'école.
Certes mais quand le programme prévoit un cours de C/C++ qu'ils ne collent pas à la place un cours de Visual C++ : ce n'est pas la même chose ! :hein: Il n'est pas normal de se retrouver avec des MacUser qui se demandent pourquoi leur programme écrit en "C++" ne compile pas sur XCode, alors que c'est tout simplement parce que n'est pas du "C++" standard. Le Visual C++ n'est pas la norme ANSI. :hein:
 
  • J’aime
Réactions: p4bl0
Certes mais quand le programme prévoit un cours de C/C++ qu'ils ne collent pas à la place un cours de Visual C++ : ce n'est pas la même chose ! :hein: Il n'est pas normal de se retrouver avec des MacUser qui se demandent pourquoi leur programme écrit en "C++" ne compile pas sur XCode, alors que c'est tout simplement parce que n'est pas du "C++" standard. Le Visual C++ n'est pas la norme ANSI. :hein:
+1 :up:
 
[MODE COUP-DE-GEULE ON]

Au passage:

Je trouve vraiment honteux que l'Education Nationale mette au programme des mati&#232;res li&#233;es &#224; l'informatique l'enseignement exclusif des outils Microsoft, en les pr&#233;sentant comme des logiciels standards et universels.

Au lieu d'apprendre &#224; utiliser un compilateur, un SGBD, un tableur ou un traitement de texte, on n'apprend plus maintenant qu'&#224; utiliser Visual C++, Access, Excel et Word.

Depuis la visite de Bill Gates &#224; Chirac, l'Education Nationale est devenue une v&#233;ritable fabrique de clients Microsoft dociles et cr&#233;tins :eek: !

Heureusement, il reste encore des profs clairvoyants, et des plateformes qui n'ont pas encore &#233;t&#233; mang&#233;es par M$.


[MODE COUP-DE-GEULE OFF]




;)

houep ils sont graves ses &#233;tudiants :zen:
la commande est clear

il y a windows et ses normes et les normes ISO internationales
la fonction n'est pas ISO donc inacceptable ds du code scuris&#233;

les mecs ils aprennent le cpp sous windows visual :D:rolleyes::D
au moins c'est sur qu'on aura pas de concurrence :D

h&#233; les mecs a 15 ans quand l'internet n'existait pas
je ne me suis jamais trouv&#233; ds des positions de creuvard comme cela

et le build and go de xcode pointe sur template makefile
c'est tout les projects templates sont des makefiles
........ pr&#233;configur&#233;s



:zen:
 
Certes mais quand le programme pr&#233;voit un cours de C/C++ qu'ils ne collent pas &#224; la place un cours de Visual C++ : ce n'est pas la m&#234;me chose ! :hein: Il n'est pas normal de se retrouver avec des MacUser qui se demandent pourquoi leur programme &#233;crit en "C++" ne compile pas sur XCode, alors que c'est tout simplement parce que n'est pas du "C++" standard. Le Visual C++ n'est pas la norme ANSI. :hein:

oui microsoft est un sp&#233;cialiste du bordel et qui se fou des normes internationnales
 
Voici un correctif possible:
Bloc de code:
#include <iostream>

int main () {
    int valeur, essai;
    int nbre = 1 ;
    
    std::cout << "entrer le nombre... " ;
    std::cin >> valeur ;
    std::cout << "Entrer un essai = " ;
    std::cin >> essai ;
    while (essai != valeur) {
        if (essai > valeur)
            std::cout << "Trop grand !" ;
        else
            std::cout << "Trop Petit !" ;
        std::cout << "Entrer un nouvel essai =" ;
        std::cin >> essai ;
        nbre++ ;
    }
    std::cout << "Vous avez trouv&#233; en " << nbre << " fois";
    return 0;
}

le'etudiant fein&#233;ant ne prend pas la peine d'esayer de comprendre les complaintes explicites de son compilo il pr&#233;f&#232;re chialer

:D