begin process at 2010 02 10 02:18:31
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive C/C++

 > 

Archives

 > 

Au secours

 > 

Probleme de compilateur.


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Probleme de compilateur.

mercredi 10 août 2005 à 22:25:12 | Probleme de compilateur.

damish

Membre Club
Bonsoir a tous.j ai un probleme pour ce qui est des compilateurs.
Je débute dans le c & c++ dans des application dos et j ai récuperer quelques sources que je voudrai executer mais lors de la compilation il me trouve plusieurs erreur.j ai essayer sous devcpp,c++builder 6
les sources on été faites sous turbo c++ mais je ne comprend pas grand chose au logiciel.est ce possible de m'expliquer son fonctionnement ou des tutos que vous connaiteriez.Jai fait une recherche sur google mais je n'est pas trouvé grand chose.

merci de votre aide
damish.
mercredi 10 août 2005 à 22:45:10 | Re : Probleme de compilateur.

vinc1008881


Pour dev-cpp :

Fichier, nouveau, projet, "console application", ok
la tu entre ton code ds la fenetre.........

Pour compiler : c'est F9 (compiler + executer).Le log des erreur se trouve en bas...voila,

@+, vinc1008881

Le goto, c'est comme le parachute, tu ne l'utilise preske pas : mais quand t'en as besoin..........

mercredi 10 août 2005 à 22:58:57 | Re : Probleme de compilateur.

damish

Membre Club
passe pas sous dev cpp.
le code source:
//----------------------------------------------------------------------//
// FICHIER              : 2DCHAP1.CPP                         //
// AUTEUR               : Shaun Dore                 //
// DESCRIPTION       : Starfield horizontal pour demontrer putpixel  //
// DATE DE MODIFICATION : 30-09-97                                    //
// COMPILATEUR          : Borland Turbo C++ Real Mode 16-bit compiler   //
// NOTES                : Compiler avec modele memoire COMPACT          //
//----------------------------------------------------------------------//

//----------------------------------------------------------------------//
// Fichiers include                                                     //
//----------------------------------------------------------------------//

#include <stdio.h>
#include <conio.h>
#include <stdlib.h>

//----------------------------------------------------------------------//
// Declaration des constantes                                           //
//----------------------------------------------------------------------//

#define MAX_ETOILES 500

//----------------------------------------------------------------------//
// Types personalises                                                   //
//----------------------------------------------------------------------//

typedef struct type_etoile  // Pour contenir les infos sur chaque etoiles
{                           // Coordonnees x,y et "z"
  int x,y,z;
};

//----------------------------------------------------------------------//
// Variables globales                      //
//----------------------------------------------------------------------//

char *ecran = (char *) (0xA0000000L);  // Pointeur sur RAM video

//----------------------------------------------------------------------//
// setmode - Appelle le mode passer en parametre                        //
//----------------------------------------------------------------------//
void setmode(unsigned int mode)
{
  asm {
   MOV AX, mode
   INT 0x10
}
}

//----------------------------------------------------------------------//
// putpixel - Affiche un pixel directement dans la memoire              //
//----------------------------------------------------------------------//
void putpixel (int x, int y, unsigned char coul)
{
  ecran[(y*320)+x] = coul;
}

//----------------------------------------------------------------------//
// Fonction MAIN                           //
//----------------------------------------------------------------------//
void main()
{
  // Rappel mathematique: % = modulo, le reste de la division entiere
  // x mod y donne toujours entre 0 et y ex: x % 15 donne toujours
  // un nombre entre 0 et 15. Bon moyen pour ramener des valeurs dans
  // un cadre defini. On s'en sert en adressage disperse.
  int et;
  unsigned char coul;
  type_etoile etoiles[MAX_ETOILES]; // Tableau d'etoiles du type etoiles
    // definie plus haut
  setmode(0x13);
  randomize();                      // Generateur de nombres aleatoires
  for (int i=0;i<=MAX_ETOILES;i++)  // Initialise la structure a 0
  {
    etoiles[i].x = 0;
    etoiles[i].y = 0;
    etoiles[i].z = 0;
  }
  do
  {
    for (et=0;et<MAX_ETOILES;et++)
    {
for (unsigned int ralenti=0; ralenti<=1000; ralenti++) {} // Ralentir!
putpixel(etoiles[et].x,etoiles[et].y,0);
//efface ancienne position
etoiles[et].x = etoiles[et].x - (etoiles[et].z % 15 + 1);
// la vitesse de deplacement en fonction du z
if (etoiles[et].x <= 0)         // si l'etoile est a gauche...
{
   etoiles[et].x = 319;          // on la remet a droite,
   etoiles[et].y = random (200); // a une nouvelle hauteur,
   etoiles[et].z = random (256); // sur un nouveau z.
      }
      coul = etoiles[et].z % 15 + 17;             // 17-32 = tons de gris
      putpixel(etoiles[et].x,etoiles[et].y,coul); // affiche nouvelle position
    }
  } while (!kbhit());

  setmode(0x03);
  printf("Shaun Dore\ndores@videotron.ca\nhttp://pages.infinit.net/shaun/");
}
et voila le raport d erreur
C:\Dev-Cpp\main.cpp In function `void setmode(unsigned int)':
44 C:\Dev-Cpp\main.cpp expected `(' before '{' token
44 C:\Dev-Cpp\main.cpp expected asm body before '{' token
45 C:\Dev-Cpp\main.cpp `MOV' undeclared (first use this function)
  (Each undeclared identifier is reported only once for each function it appears in.)
45 C:\Dev-Cpp\main.cpp expected `;' before "AX"
45 C:\Dev-Cpp\main.cpp At global scope:
62 C:\Dev-Cpp\main.cpp `main' must return `int'
C:\Dev-Cpp\main.cpp In function `int main(...)':
72 C:\Dev-Cpp\main.cpp `randomize' undeclared (first use this function)
91 C:\Dev-Cpp\main.cpp `random' undeclared (first use this function)
C:\Dev-Cpp\Makefile.win [Build Error]  [main.o] Error 1 .
cela vient t il du compilateur?
mercredi 10 août 2005 à 23:00:18 | Re : Probleme de compilateur.

BruNews

Administrateur CodeS-SourceS
Laisse tomber les sources turbo c++, c'est du 16 bits, au musée.
Tu en as des tas ici en 32 bits sur devcpp.

ciao...
BruNews, MVP VC++
mercredi 10 août 2005 à 23:07:18 | Re : Probleme de compilateur.

damish

Membre Club
si tu l'dit :)j debute donc je connai pas beaucoup j'arrive du php.
merci!
jeudi 11 août 2005 à 02:13:58 | Re : Probleme de compilateur.

racpp

Administrateur CodeS-SourceS
Salut,
Si tu comptes travailler sous DOS, il est préférable d'utiliser le compilateur Turbo C ou Turbo C++, les deux sont téléchargeables gratuitement sur le site de Borland dans sa section "Musée". Ton code et les autres passeront sans problème.


jeudi 11 août 2005 à 13:56:09 | Re : Probleme de compilateur.

damish

Membre Club
Le probleme c est que j ai du mal a l'utiliser.on ne ce moque pas :)connai tu un tutos?
merci
jeudi 11 août 2005 à 14:38:43 | Re : Probleme de compilateur.

whikie

j'ai trouvé quelques solutions a ton ton probleme (pas tout hélas)

Déja ta procedure main() doit absolument renvoyé un int et pas un void
ensuite la syntaxe de l'asm sous devcpp est particuliere j'ai trouvé ca a cet adresse : http://www.cppfrance.com/forum.v2.aspx?id=96066

donc en refaisant ton code avec ces infos :

//----------------------------------------------------------------------//
// FICHIER              : 2DCHAP1.CPP                         //
// AUTEUR               : Shaun Dore                 //
// DESCRIPTION       : Starfield horizontal pour demontrer putpixel  //
// DATE DE MODIFICATION : 30-09-97                                    //
// COMPILATEUR          : Borland Turbo C++ Real Mode 16-bit compiler   //
// NOTES                : Compiler avec modele memoire COMPACT          //
//----------------------------------------------------------------------//

//----------------------------------------------------------------------//
// Fichiers include                                                     //
//----------------------------------------------------------------------//

#include <stdio.h>
#include <conio.h>
#include <stdlib.h>

//----------------------------------------------------------------------//
// Declaration des constantes                                           //
//----------------------------------------------------------------------//

#define MAX_ETOILES 500

//----------------------------------------------------------------------//
// Types personalises                                                   //
//----------------------------------------------------------------------//

typedef struct type_etoile  // Pour contenir les infos sur chaque etoiles
{                           // Coordonnees x,y et "z"
  int x,y,z;
};

//----------------------------------------------------------------------//
// Variables globales                      //
//----------------------------------------------------------------------//

char *ecran = (char *) (0xA0000000L);  // Pointeur sur RAM video

//----------------------------------------------------------------------//
// setmode - Appelle le mode passer en parametre                        //
//----------------------------------------------------------------------//
void setmode(unsigned int mode)
{
   asm("MOV AX, mode");
   asm("INT 0x10");


}
//----------------------------------------------------------------------//
// putpixel - Affiche un pixel directement dans la memoire              //
//----------------------------------------------------------------------//
void putpixel (int x, int y, unsigned char coul)
{
  ecran[(y*320)+x] = coul;
}

//----------------------------------------------------------------------//
// Fonction MAIN                           //
//----------------------------------------------------------------------//
int main()
{
  // Rappel mathematique: % = modulo, le reste de la division entiere
  // x mod y donne toujours entre 0 et y ex: x % 15 donne toujours
  // un nombre entre 0 et 15. Bon moyen pour ramener des valeurs dans
  // un cadre defini. On s'en sert en adressage disperse.
  int et;
  unsigned char coul;
  type_etoile etoiles[MAX_ETOILES]; // Tableau d'etoiles du type etoiles
    // definie plus haut
  setmode(0x13);
  randomize();                      // Generateur de nombres aleatoires
  for (int i=0;i<=MAX_ETOILES;i++)  // Initialise la structure a 0
  {
    etoiles[i].x = 0;
    etoiles[i].y = 0;
    etoiles[i].z = 0;
  }
  do
  {
    for (et=0;et<MAX_ETOILES;et++)
    {
for (unsigned int ralenti=0; ralenti<=1000; ralenti++) {} // Ralentir!
putpixel(etoiles[et].x,etoiles[et].y,0);
//efface ancienne position
etoiles[et].x = etoiles[et].x - (etoiles[et].z % 15 + 1);
// la vitesse de deplacement en fonction du z
if (etoiles[et].x <= 0)         // si l'etoile est a gauche...
{
   etoiles[et].x = 319;          // on la remet a droite,
   etoiles[et].y = random (200); // a une nouvelle hauteur,
   etoiles[et].z = random (256); // sur un nouveau z.
      }
      coul = etoiles[et].z % 15 + 17;             // 17-32 = tons de gris
      putpixel(etoiles[et].x,etoiles[et].y,coul); // affiche nouvelle position
    }
  } while (!kbhit());

  setmode(0x03);
  printf("Shaun Dore\ndores@videotron.ca\nhttp://pages.infinit.net/shaun/");
  return 0;
}

j'obtiens les erreurs suivantes que les experts ici vont corriger tres vite

 C:\Dev-Cpp\maincoorection.cpp In function `int main()':
71 C:\Dev-Cpp\maincoorection.cpp `randomize' undeclared (first use this function)
  (Each undeclared identifier is reported only once for each function it appears in.)
90 C:\Dev-Cpp\maincoorection.cpp `random' undeclared (first use this function)
 C:\Dev-Cpp\Makefile.win [Build Error]  [maincoorection.o] Error 1

Bonne chance

jeudi 11 août 2005 à 15:00:00 | Re : Probleme de compilateur.

whikie

j'ai corrigé les erreurs  de randomize par srand(0);
et random(200)  par =(rand()%200);
 random(256) par =(rand()%256);
 a partir de ca le compilateur me trouve des erreurs que je ne saurais trouvé...(pas encore ..)

les as de l'assembleur a vos claviers

en effets les erreurs sont du à priori à la partie assembleur  :

  Assembler messages:
  too many memory references for `mov'
  suffix or operands invalid for `int'
 C:\Dev-Cpp\Makefile.win [Build Error]  [maincoorection.o] Error 1

Bonne chance

jeudi 11 août 2005 à 15:18:06 | Re : Probleme de compilateur.

BruNews

Administrateur CodeS-SourceS
sur !!! c'est de la syntaxe standard Intel que tu as.
Faut trouver la doc de l'exotique AT&T qu'emploie ton compilo.

Tu ne fais que perdre du temps avec ces vieilleries, dans quelques mois on ne trouvera plus un PC 32 bits en vente et ces progs 16 bits ne pourront même plus être lancés.

ciao...
BruNews, MVP VC++

1 2 3

Cette discussion est classée dans : probleme, sources, chose, grand, compilateur


Répondre à ce message

Sujets en rapport avec ce message

Probleme de compilateur...aidez moi qq ? [ par frysa ] Bonjour!Je prévois commencer à apprendre l'OpenGL, mais quel compilateur devrais-je utiliser pour mes prochains PGM ? J'ai en se moment Turbo c++ (com probleme avec compilateur...aidez moi qq !? [ par frysa ] Bonjour!Je prévois commencer à apprendre l'OpenGL, mais quel compilateur devrais-je utiliser pour mes prochains PGM ? J'ai en se moment Turbo c++ (com Nix petit probleme de syntaxe avec les sources [ par Nic.C ] Salut,En faite le probleme c'est que tu fait mettre certain mot clés avec le 1er caractere en majuscule ce qui pose probleme quand on fait copier/coll compilateur ? [ par Jeffray ] Bonjour,Je me posais une petite question :Je suis en train de réaliser un petit programme en orienté objet.Au fur et à mesure que j'ajoute des classes probleme sockets sous c++ Builder [ par scbzolk ] Tout d'abord boujour à tous :) J'ai un probleme avec l'utilisation des TCustomWinSocket sous c++ builder En fait je voudrais savoir s'il ya un moyen registre et devcpp [ par Bebert251188 ] sltj'utilise dev-c++, et j'avais besoin de travailler avec le registre pour un petit programme, donc j'ai regardé quelques sources sur cppfrance, mais Probleme de compilaton [ par hypocastor ] Bonjour,J'ai un probleme lors de la compilation avec borland pour mes class. Je pense que c'est tout bete mais je ne voit pas ou c'est. Voici la class Probleme avec Visual C++ 6 [ par UltimAKnighT ] Bonjour, j'ai changer de compilateur pour Visual C++ 6, celui-ci me pose un probleme.En effet, lorsque je build mon projet, il crée un executable en m probleme dans le compilateur c [ par maths_info ] salut, j'ai un petit probleme, quand j'ecris une chaine de caractere en c et je le demande de m'affiche il m'affiche des symbole comme le code ascii. probleme avec biblio dc1394 [ par braf78 ] mon probleme qaund je compile mon programme avec compilateur gcc ,il reconait pas les fonction de la bibliotheque ma question comment l


Nos sponsors


Sondage...

CalendriCode

Février 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,811 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales