Problème avec Borland

Fermé
Max - 21 juil. 2007 à 11:50
dcanl Messages postés 2999 Date d'inscription mercredi 7 septembre 2005 Statut Contributeur Dernière intervention 3 juin 2013 - 30 juil. 2007 à 00:01
Salut a tous!

J'utilise borland pour réviser mon cour de c++ et après plusieurs essais, le compilateur me dis toujours la même chose:

Unable to open include file 'iostream.h'

J'ai été dans le fichier include pour voire si iostream y était, et c'est bien le cas, pourtant je n'arrive quand même pas a y accedez. Peux être c'est la syntaxe qui est fausse, mais depuis un ans je l'écris comme ca avec mon prof sur le même programme a l'école et ca a toujours bien fonctionné.
Je ne comprend vraiment pas, peux être qu'il y a une version pour le C et une autre version pour le C++ je ne connais pas du tout les différence de syntaxe.
Pour ma part je l'écris comme ceci #Include <Iostream.h>. Si cette commande de base ne marche pas, je n'ose imaginer la suite :'(
Voila si vous pouviez m'élcairer que je puisse commencer a étudier ca serais bien sympatique !

Merci d'avance.
A voir également:

9 réponses

dcanl Messages postés 2999 Date d'inscription mercredi 7 septembre 2005 Statut Contributeur Dernière intervention 3 juin 2013 470
21 juil. 2007 à 12:55
Salut !

Essaie
#include <iostream>
et puis aussi
#include "iostream.h"


Vagues souvenirs de borland...

@+
0
re

tout d'abord merci de ta réponce, je viens de tester, et malheureusement c'est toujours le même problème :'(

si quelqu'un a une autre solution je suis tout ouïe ^^
0
dcanl Messages postés 2999 Date d'inscription mercredi 7 septembre 2005 Statut Contributeur Dernière intervention 3 juin 2013 470
21 juil. 2007 à 17:51
Re !

C'est quelle version de Borland que tu utilises ?

Le machin-chose-tout-intégré-d'la-mort-qui-tue 2006 ? Ou la version 6 ?

Parce que le package 2006, j'ai jamais réussi à le maitriser ! Dans le genre usine à gaz...

@+
0
Posotaz Messages postés 489 Date d'inscription samedi 23 juin 2007 Statut Membre Dernière intervention 19 juin 2011 225
21 juil. 2007 à 23:40
Mmm... L'installation de Borland s'est peut-être mal passée, il ne sait peut-être pas où chercher les librairies. Essaie avec Dev-C++.

Sinon en C++ on utilise bien <iostream> sans le h (pour les instructions cin et cout).

Assure-toi aussi d'avoir bien créé un projet C++ et non pas un projet C (dans quel cas il risque d'ignorer tout simplement la syntaxe du C++ ou de mettre une erreur comme ici). Parfois un projet buggue et il vaut mieux en recréer un autre.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Merci de vos conseil a tous, j'ai tester ce que vous m'avez dis rien n'y faire, ca ne change rien.

Je laisse donc tomber Borland pour me concentrer sur Dev C++ ... et la grande surprise :

\Dev-Cpp\bin\SansNom1.cpp C:\Dev-Cpp\bin\C iotream.h: No such file or directory.

En gros le même problème qu'avec Borland

J'ai essayer de remplacer iostream par iostream.H (etc...) et ca na quand même rien donné

Merci de répondre car je me sens vraiment perdu la ^^
0
Posotaz Messages postés 489 Date d'inscription samedi 23 juin 2007 Statut Membre Dernière intervention 19 juin 2011 225
26 juil. 2007 à 20:23
Tu sais nous copier le bout de code qu'on le compile chez-nous ?
0
oui biensur c'est le premier exercice de mon cahier, donc rien de plus simple et ca ne fonctionne quand meme pas :

#include <iostream.h> ----> ou <iostream>
main ()
{
cout << "hello world";
return 0;
}

voila, merci de votre aide
0
dcanl Messages postés 2999 Date d'inscription mercredi 7 septembre 2005 Statut Contributeur Dernière intervention 3 juin 2013 470
27 juil. 2007 à 14:16
Ah oui effectivement, pas besoin de compiler pour voir que ça devrait marcher !

Tu n'as pas de message d'erreur à l'installation de Borland ?
Tu le laisses s'installer à l'emplacement par défaut ?

@+
0
dcanl Messages postés 2999 Date d'inscription mercredi 7 septembre 2005 Statut Contributeur Dernière intervention 3 juin 2013 470
28 juil. 2007 à 10:03
Re !

Après ton include, mets
using namespace std;

ou alors mets
std::cout<<"hello world";

au lieu de
cout<<"hello world";

Je ne sais pas si ça vient de ça (ça fait vraiment longtemps que je n'ai pas fait de C++, ça fait peur...) mais ça peut pas faire de mal !

@+
0
Posotaz Messages postés 489 Date d'inscription samedi 23 juin 2007 Statut Membre Dernière intervention 19 juin 2011 225
28 juil. 2007 à 12:55
J'ai hésité à faire cette même suggestion que Dcanl mais après avoir testé d'inclure <iostream.h> plutôt que <iostream> (ce que je fais d'habitude) j'ai remarqué que même sans déclarer l'espace de noms "std" ça passait sous Dev-C++. Je pense que de toute façon même si Max enlève l'instruction "cout", c'est à la première ligne "include" que ça plante.

(remarque, si tu retournes 0 à ta fonction "main", il faut la déclarer "int" ;-) )

Une dernière fois vérifie dans tes options que (du moins pour Dev-C++) :

Bin Directory = C:\Dev-C++\Bin\
C include files = C:\Dev-C++\Include\
C++ include files = C:\Dev-C++\Include\G++;C:\Dev-C++\Include\
Libraries directory = C:\Dev-C++\Lib\

(et que ces chemins existent physiquement sur ton disque).


Suggestion toute bête : Tu as essayé en désactivant tes anti-virus (ou autres logiciels de protection), quelques fois qu'ils empêcheraient l'accès en lecture à certains dossiers, dont celui contenant l'iostream ? (problèmes de droits ou que sais-je :$ )
0
Salut a tous!

tout d'abord je tien a dire que je ne veux pas remplacer de fragment de côde par quelque chose d'autre car j'ai pliens d'exercices dans mon court et si jdois remplacer pour tous je vais m'y perdre (il faut pas oublier que j'ai raté mon exam de c^^).

l'installation c'est effectué avec succet j'ai égualement vérifié les dossiers suivants :

Bin Directory = C:\Dev-C++\Bin\
C include files = C:\Dev-C++\Include\
C++ include files = C:\Dev-C++\Include\G++;C:\Dev-C++\Include\
Libraries directory = C:\Dev-C++\Lib\

tout y est, par contre en ce qui concerne l'anti virus, je n'avais vraiment pas pensé a ca, ca m'étonnerais que ce soit ca mais je n'ai plus que ca a tester maintenant donc je vous dirais quoi.

Si quelqu'un a une autre suggestion ou même un compilateur que je pourrais dl et utiliser sans problème toute propositions est la bienvenue^^.
0
Posotaz Messages postés 489 Date d'inscription samedi 23 juin 2007 Statut Membre Dernière intervention 19 juin 2011 225
28 juil. 2007 à 21:17
"il faut pas oublier que j'ai raté mon exam de c"


Justement ^^

Toute fonction qui s'attend à retourner une valeur doit le déclarer dans son prototype. Sur certains compilateurs, d'ailleurs, ton code ne devrait même pas compiler. Donc étant donné que ta fonction main retourne la valeur 0, il faut la déclarer int. Et de toute façon en standard, une fonction main doit retourner un entier donc ne pense même pas à mettre void devant.

Pour ce qui est du std (là on parle exclusivement pour le C++) c'est pour une simple raison d'espaces de noms. En réalité il ne faut pas écrire cout mais std::cout, sauf si tu déclares explicitement l'utilisation de l'espace de noms par "using namespace std" à la suite des include (comme l'a bien expliqué notre ami Dcanl). Dans le cas contraire ça ne fonctionnera pas mais certains compilateurs permettent ce genre d'omission (tout comme ils permettent de ne pas obliger à mettre int devant le main puisqu'ils vont le faire à ta place sans rien te dire).

Un autre compilateur ? A part peut être WinDev (de Microsoft, mais je ne l'ai jamais utilisé) mais tous les autres se basent sur le même compilateur GCC. Mais bon... deux environnements de développement différents qui produisent les mêmes résultats, je me dis que c'est un problème au niveau de ton système, comme si quelque chose empêchait l'accès aux fichiers .h à partir du compilateur (supposant toujours que tu écris correctement en miniscules <iostream> évidemment). C'est pour cette raison que j'ai suggéré la désactivation de certains de tes modules de sécurité dans un premier temps ; et dans un second de vérifier que les options du compilateur (ce qui indique où il doit aller chercher les fichiers à inclure) correspondaient bien à la réalité (mais tu me dis que oui donc).
0
dcanl Messages postés 2999 Date d'inscription mercredi 7 septembre 2005 Statut Contributeur Dernière intervention 3 juin 2013 470 > Posotaz Messages postés 489 Date d'inscription samedi 23 juin 2007 Statut Membre Dernière intervention 19 juin 2011
29 juil. 2007 à 16:21
WinDev c'est pas Microsoft !

C'est PCSoft, et tu codes pas en C ni en C++. Tu codes en "W-langage", sorte de pseudo-code qui est ensuite transformé en C par le compilateur intégré à WinDev (parce que tout passe par le C de toute façon).

C'est d'ailleurs sous WinDev que je suis en train de développer ! (d'où mes pauvres souvenirs de C++, on oublie vite quand on passe à Windev)

Par contre, Max, tu peux essayer Visual C++ Express, ça, c'est Microsoft ;-).
http://www.microsoft.com/france/msdn/vstudio/express/visualc/default.mspx

Et c'est gratuit en version express justement.

Mais comme le dit Posotaz, deux environnements de développement différents qui produisent les mêmes résultats, je me dis que c'est un problème au niveau de ton système.

@+
0
Posotaz Messages postés 489 Date d'inscription samedi 23 juin 2007 Statut Membre Dernière intervention 19 juin 2011 225 > dcanl Messages postés 2999 Date d'inscription mercredi 7 septembre 2005 Statut Contributeur Dernière intervention 3 juin 2013
29 juil. 2007 à 23:47
Oups, au temps pour moi :-$

A la base je voulais réellement dire Visual C++ (que j'ai déjà utilisé aussi) mais j'ai dérapé avec WinDev parce que j'en ai entendu parler récemment tout en sachant que ça n'a rien à voir. Merci d'avoir rectifié mon erreur :-).
0
dcanl Messages postés 2999 Date d'inscription mercredi 7 septembre 2005 Statut Contributeur Dernière intervention 3 juin 2013 470 > Posotaz Messages postés 489 Date d'inscription samedi 23 juin 2007 Statut Membre Dernière intervention 19 juin 2011
30 juil. 2007 à 00:01
Y'a pas d'mal ! ;-)
0