prgrammation C/C++

decoris

Vétéran
Club MacG
3 Novembre 2001
6 536
95
Belgique
hello!

j'ai besoin, dans le cadre de mon cours d'info, d'un logiciel permettant de programmer efficacement en C/C++, notamment via makefile automatique, etc...
et de préférence freeware.

j'ai su, sous jaguar et project builder, compiler le bête hello world que voici :

#include <iostream>
int main() {
cout << "Hello world!" << endl;
}

problème : sous panther et xcode, il ne compile pas!!!

j'ai l'erreur suivante :
main.cpp:4: `cout' undeclared (first use this function)
main.cpp:4: (Each undeclared identifier is reported only once for each function it appears in.)
main.cpp:4: `endl' undeclared (first use this function)

pire, si j'installe les dev tools 2002 sous panther et que j'essaye avec PB, ça ne marche pas non plus!

il faut que je mette std: :cout à la place de cout, et que je vire le endl... bizarre non?

en plus sous panther plus moyen d'utiliser GCC 2.95.2! (il n'y a que 3,1 et 3,3!)

bref, je suis un peu perdu...
 

Bobbus

Membre confirmé
5 Décembre 2001
146
1
39
En bref :

il s'agit plus des différences de comportement entre les versions de GCC inférieures à la 3.X.X et les dernières. Celles-ci sont beaucoup plus strictes sur les namespaces.

La solution a ton problème est effectivement de mettre "std: :cout" et std: :endl à la place de cout et endl.

Tu peux aussi, pour éviter d'avoir à toujours indiquer au compilateur à quoi tu fais référence, utiliser les namespaces en ajoutant

Bloc de code:
 using namespace std;
au début de ton fichier.

Bob
 

decoris

Vétéran
Club MacG
3 Novembre 2001
6 536
95
Belgique
merci!

j'ai remis GCC 2.95.2 comme compilateur par défaut dans x-code, et ça marche à nouveau... je préfère avoir le même compilateur que mes profs!

est ce que x-code peut faire un makefile tout seul, pour un projet C++?
 

decoris

Vétéran
Club MacG
3 Novembre 2001
6 536
95
Belgique
autre petite question : existe t il une fonction C/C++ qui compte le nombre d'opération effectuée par l'ordinateur lors de l'exécution du programme (le nombre de flops, quoi)

merci!
 

Driden

Nouveau membre
14 Mars 2004
5
0
Il vaut mieux utiliser des outils de benchmarks pour ça ou de profilage comme gprof.
 

plumber

Membre confirmé
15 Janvier 2003
473
0
decoris a dit:
hello!

j'ai besoin, dans le cadre de mon cours d'info, d'un logiciel permettant de programmer efficacement en C/C++, notamment via makefile automatique, etc...
et de préférence freeware.

j'ai su, sous jaguar et project builder, compiler le bête hello world que voici :

#include <iostream>
int main() {
cout << "Hello world!" << endl;
}

problème : sous panther et xcode, il ne compile pas!!!

j'ai l'erreur suivante :
main.cpp:4: `cout' undeclared (first use this function)
main.cpp:4: (Each undeclared identifier is reported only once for each function it appears in.)
main.cpp:4: `endl' undeclared (first use this function)

pire, si j'installe les dev tools 2002 sous panther et que j'essaye avec PB, ça ne marche pas non plus!

il faut que je mette std: :cout à la place de cout, et que je vire le endl... bizarre non?

en plus sous panther plus moyen d'utiliser GCC 2.95.2! (il n'y a que 3,1 et 3,3!)

bref, je suis un peu perdu...
g++ -Wno-deprecated -fno-common -O3

heu les gas la vous m'inquietez
 

Couhoulinn

Membre confirmé
3 Avril 2004
299
4
Quand on installe XCode, on peut lui demander qu'il installe aussi gcc 2.95.2 , il faut aller dans l'installation personalisée.

Après, il suffit de prendre gcc 2.95.2 comme compilateur par défaut. Donc on sait toujours utiliser gcc 2.95.2 dans Panther
 

plumber

Membre confirmé
15 Janvier 2003
473
0
non mais ce code ce compile tres bien avec gcc 3
la c'est pas un probleme de compilo mais d'humain