GIDForums  

Go Back   GIDForums > Computer Programming Forums > CPP / C++ Forum
User Name
Password
Register FAQ Members List Calendar Search Today's Posts Mark Forums Read

 
 
Thread Tools Search this Thread Rate Thread
  #1  
Old 15-May-2008, 19:03
essell55 essell55 is offline
New Member
 
Join Date: May 2008
Posts: 3
essell55 is on a distinguished road

Problems with char Grids Please save My Life!


Hey GID. I'm having the following error

1>d:\tp5\tp5part2\tp5part2\1.cpp(201) : error C2106: '=' : left operand must be l-value
1>d:\tp5\tp5part2\tp5part2\1.cpp(20 : error C2106: '=' : left operand must be l-value
1>d:\tp5\tp5part2\tp5part2\1.cpp(235) : error C2106: '=' : left operand must be l-value

the teacher say i MUST use the grids, namespace std and seekp/write functions...

CPP / C++ / C Code:
#include <iostream>
#include <iomanip>
#include <fstream>
#include <string>
#include <conio.h>
#include <windows.h>
#include <time.h>
#include "I:\Docs\cvm.h"

using namespace std;  

// Variables Globales

const int NB_CLIENTS=50;
const int NB_LOC=3;
const int TempsRetard=2; //Temps de Retard en secondes

// STRUCTURES
struct Date_s
   {
   int Jour,
       Mois,
       Annee;
   };
struct Films_s
{
	int No;
	char Titre[40];
	time_t Temps;
	Date_s Date;
};
struct Adresse_s
{
	int No;
	char Rue[40],Ville[40],Cp[20];
};
struct Client_s
{
	char Nom[40],Prenom[40];
	int Tel;
	Adresse_s Adresse;
	Films_s Films[NB_LOC];
	int NbFilms;
	float MntDu;
};


// PROTOTYPES
void NouveauClient(void);
void AfficherDossierClient(int NbClient);
void Location(int NbClient);
void Retour(int NbClient);
void ListeDesFilmsLoues(void);
void ListeClientsRetard(void);
void Ign(void);
void Menu(void); // Menu Principal
int LireNoClient(void);
// VARIABLES GLOBALES 2
struct Client_s Client;
int ProchainClientValide=0;
fstream FichierVideo;

//DÉFINITIONS
int LireNoClient(void)
{
	int NOCL;
	bool OK=false;
	while(!OK)
	{
	clrscr();
	gotoxy(1,1);
	cout << "Entrez votre num\x82ro de client :";
	cin >> NOCL;
	cin.ignore( 80, '\n' );
	if((NOCL-1)<ProchainClientValide)
	{
	return NOCL-1;  // Car NbClient doit toujours égaler l'indice
	OK=true;
	}
	else
	{
		cout << "\a";
	}
	}
}

/*void ListeDesFilmsLoues(void)
{
	clrscr();
	cout << "\n Liste des films lou\x82s";
	for(int i=0;i<ProchainClientValide;i++) //Lister les clients
	{
		for(int j=0;j<Client[i].NbFilms;j++) // Lister la date des films loués

		{
		cout << "\n\n  No :" << Client[i].Films[j].No;
		cout << "\n  Titre :" << Client[i].Films[j].Titre;
		cout << "\n  Date :"  << Client[i].Films[j].Date.Jour << "/" << Client[i].Films[j].Date.Mois<< "/" << Client[i].Films[j].Date.Annee;
		}
	}
	_getch();
}*/
/*void ListeClientsRetard(void)
{
	clrscr();
		cout << "\n Liste des clients en retard";
time_t start,finish;
bool Adone=false;
	for(int i=0;i<ProchainClientValide;i++)
	{
		Adone=false;
		for(int j=0;j<Client[i].NbFilms;j++)
		{
				time(&finish);
				 start=Client[i].Films[j].Temps;
				 if(difftime(finish, start)>TempsRetard)// vérifier si retard
				 {
					 while(!Adone)
					 {
						 cout << "\n\n  Nom : " << Client[i].Prenom << " " << Client[i].Nom;
						 cout << "\n  T\x82l\x82phone : " << Client[i].Tel <<"\n";
						 Adone=true;
					 }
					// 					Client.Films[1].Date.Jour = Client.Films[2].Date.Jour;
					//Client.Films[1].Date.Mois = Client.Films[2].Date.Mois;
					//Client.Films[1].Date.Annee = Client.Films[2].Date.Annee;
							cout << "\n   Date : "  << Client[i].Films[j].Date.Jour << "/" << Client[i].Films[j].Date.Mois<< "/" << Client[i].Films[j].Date.Annee;
				 }
		}
	}
	_getch();
}*/
/*void ClientTest() // Client test pour tester le programme sans s'énerver!
{
Client.Prenom="Sacha";
Client.Nom="Lens";
Client.Tel=(int)5145184095;
Client.Adresse.No=7430;
Client.Adresse.Rue="Thibault";
Client.Adresse.Ville="Brossard";
Client.Adresse.Cp="J4W 2P3";
Client.NbFilms=3;
Client.MntDu=0;
Client.Films[0].No=1111111;
Client.Films[0].Titre="1111111111111";
time(&Client.Films[0].Temps);
Client.Films[1].No=222222;
Client.Films[1].Titre="22222222222";
time(&Client[0].Films[1].Temps);
Client.Films[2].No=33333;
Client.Films[2].Titre="3333333333333";
time(&Client.Films[2].Temps);
Client.Films.Date.Jour=25;
Client.Films.Date.Mois=03;
Client.Films[0].Date.Annee=1987;
Client.Films[1].Date.Jour=25;
Client.Films[1].Date.Mois=03;
Client.Films[1].Date.Annee=1987;
Client.Films[2].Date.Jour=25;
Client.Films[2].Date.Mois=03;
Client.Films[2].Date.Annee=1987;
FichierVideo.seekp((0*sizeof(Client)), ios::beg);
FichierVideo.write((char*)&Client, sizeof (Client));
//ProchainClientValide++;
}*/
void Retour(int NbClient)
{
	clrscr();
	FichierVideo.seekp(NbClient*sizeof(Client), ios::beg);
    FichierVideo.read((char*)&Client, sizeof(Client));
	time_t start,finish;
	if(Client.NbFilms>0)
	{
	cout << " \n Quel film d\x82sirez-vous retourner? ";
	for(int i=0;i<Client.NbFilms;i++)
	{
		cout << "\n\n  " << i+1 << ".";
		cout << "\n      No : " << Client.Films[i].No;
		cout << "\n      Titre : " << Client.Films[i].Titre;
		cout << "\n      Date : "  << Client.Films[i].Date.Jour << "/" << Client.Films[i].Date.Mois<< "/" << Client.Films[i].Date.Annee;
	}
	cout << "\n\n  4. Retourner au Menu";
	switch(_getche())
	{
	case '1':
		if(Client.NbFilms>=1)// Retour du film #1 et vérification si il existe
			 {
				 time(&finish);
				 start=Client.Films[0].Temps;
				 if(difftime(finish, start)>TempsRetard)// 1 seconde de retard
				 {
					 Client.MntDu+=5;
				 }
					Client.Films[0].No=Client.Films[1].No;
					strcpy_s(Client.Films[0].Titre, Client.Films[1].Titre);
					Client.Films[0].Temps=Client.Films[1].Temps;
					Client.Films[0].Date.Jour = Client.Films[1].Date.Jour;
					Client.Films[0].Date.Mois = Client.Films[1].Date.Mois;
					Client.Films[0].Date.Annee = Client.Films[1].Date.Annee;

					Client.Films[1].No=Client.Films[2].No;
					strcpy_s(Client.Films[1].Titre, Client.Films[2].Titre);
					Client.Films[1].Temps=Client.Films[2].Temps;
					Client.Films[1].Date.Jour = Client.Films[2].Date.Jour;
					Client.Films[1].Date.Mois = Client.Films[2].Date.Mois;
					Client.Films[1].Date.Annee = Client.Films[2].Date.Annee;
					
					Client.NbFilms-=1;
					Retour(NbClient);
			 }
			 else
			 {
				cout << "\a";
				Retour(NbClient);
				
			 }
		break;
	case '2':
		if(Client.NbFilms>=2)// Retour du film #2  et vérification si il existe
			 {

				 time(&finish);
				 start=Client.Films[1].Temps;
				 if(difftime(finish, start)>TempsRetard)//1 seconde de retard
				 {
					 Client.MntDu+=5;
				 }
					Client.Films[1].No=Client.Films[2].No;
					strcpy_s(Client.Films[1].Titre, Client.Films[2].Titre);
					Client.Films[1].Temps=Client.Films[2].Temps;
					Client.Films[1].Date.Jour = Client.Films[2].Date.Jour;
					Client.Films[1].Date.Mois = Client.Films[2].Date.Mois;
					Client.Films[1].Date.Annee = Client.Films[2].Date.Annee;

					Client.NbFilms-=1;
					Retour(NbClient);
			 }
			 else
			 {
				cout << "\a";
				Retour(NbClient);
				
			 }
		break;
	case '3':if(Client.NbFilms>=3)// Retour du film #3 et vérification si il existe
			 {

				 time(&finish);
				 start=Client.Films[2].Temps;
				 if(difftime(finish, start)>TempsRetard)//1 seconde de retard 86400 pour 24h
				 {
					 Client.MntDu+=5;
				 }

					Client.NbFilms-=1;
					Retour(NbClient);
			 }
			 else
			 {
				cout << "\a";
				Retour(NbClient);
				
			 }
		break;
	case '4'://retour au menu
		break;
	default:cout << "\a";Retour(NbClient);
		break;
	}
	}
	else
	{
				clrscr();
		gotoxy(24,10);
		cout << "Il n'y a pas de films lou\x82s!";
		_getch();
	}
	FichierVideo.seekp((NbClient*sizeof(Client)), ios::beg);
    FichierVideo.write((char*)&Client, sizeof (Client));
}
void Location(int NbClient)
{
	time_t Heure;
	tm DateCreationClient;
	FichierVideo.seekp(NbClient*sizeof(Client), ios::beg);
    FichierVideo.read((char*)&Client, sizeof(Client));

Heure = time(NULL);     // ou time(&Heure);
localtime_s(&DateCreationClient, &Heure);
		if(Client.NbFilms<3)
		{
			cout << "\n\n Film #" << Client.NbFilms+1 ;
		cout << "\n\n No :" ;
		cin >> Client.Films[Client.NbFilms].No;
		Ign();
		cout << "\n Titre :" ;
		cin >>  Client.Films[Client.NbFilms].Titre;
				Ign();
		time(&Client.Films[Client.NbFilms].Temps);


		cout << "\n\n No :" << Client.Films[Client.NbFilms].No; // Affichage du résultat
		cout << "\n Titre :" << Client.Films[Client.NbFilms].Titre;
		cout << "\n Date :"  << DateCreationClient.tm_mday << "/" << DateCreationClient.tm_mon+1 << "/" << DateCreationClient.tm_year+1900;
		//Enregistrement de la date
		Client.Films[Client.NbFilms].Date.Jour = DateCreationClient.tm_mday;
		Client.Films[Client.NbFilms].Date.Mois = DateCreationClient.tm_mon+1;
		Client.Films[Client.NbFilms].Date.Annee = DateCreationClient.tm_year+1900;
		Client.NbFilms++;
		}
		else 
	{
		clrscr();
		gotoxy(24,10);
		cout << "Il n'y a plus de place dans la base de donn\x82" << "es!";
		_getch();

	}
	_getch();
	FichierVideo.seekp((NbClient*sizeof(Client)), ios::beg);
    FichierVideo.write((char*)&Client, sizeof (Client));
}
void AfficherDossierClient(int NbClient)
{
	FichierVideo.seekp(NbClient*sizeof(Client), ios::beg);
    FichierVideo.read((char*)&Client, sizeof(Client));
	clrscr();// COLONNE DE GAUCHE
	cout <<  " Nom : " << Client.Prenom << " "<< Client.Nom;
	cout << "\n\n T\x82l\x82phone : " << Client.Tel;
	cout << "\n\n " << Client.Adresse.No << " " << Client.Adresse.Rue << "\n ";
	cout << Client.Adresse.Ville << ", QC, Canada\n ";
	cout << Client.Adresse.Cp;
	cout << fixed <<"\n\n Argent d\x96 : " << setprecision(2) << Client.MntDu << " $";
	
	cout << "\n\n Nombres de films lou\x82s : " << Client.NbFilms;
	// Ligne de | au centre de L'affichage
		for(int j=0;j<25;j++)
		{
		gotoxy(40,j);
		cout << "\xdb";
		}
						// COLONNE DE DROITE
		if(Client.NbFilms>0)
		{
		gotoxy(42,2); cout << "Film #1";
		gotoxy(42,3);cout << "No :" << Client.Films[0].No;
		gotoxy(42,4);cout << "Titre : " << Client.Films[0].Titre;
		gotoxy(42,5);cout << "Date : "  << Client.Films[0].Date.Jour << "/" << Client.Films[0].Date.Mois<< "/" << Client.Films[0].Date.Annee;
		}
		if(Client.NbFilms>1)
		{
		gotoxy(42,7); cout << "Film #2";
		gotoxy(42,8);cout << "No :" << Client.Films[1].No;
		gotoxy(42,9);cout << "Titre : " << Client.Films[1].Titre;
		gotoxy(42,10);cout << "Date : "  << Client.Films[1].Date.Jour << "/" << Client.Films[1].Date.Mois<< "/" << Client.Films[1].Date.Annee;
		}
		if(Client.NbFilms>2)
		{
		gotoxy(42,12); cout << "Film #3";
		gotoxy(42,13);cout << "No : " << Client.Films[2].No;
		gotoxy(42,14);cout << "Titre : " << Client.Films[2].Titre;
		gotoxy(42,15);cout << "Date : "  << Client.Films[2].Date.Jour << "/" << Client.Films[2].Date.Mois<< "/" << Client.Films[2].Date.Annee;
		}
		_getch();
}
void NouveauClient(void)
{

		clrscr();
		cout << "Client # " << ProchainClientValide+1 << "\n Votre Pr\x82nom : ";  
		cin >> Client.Prenom;
		Ign();
		cout << "\n Votre Nom : ";  
		cin >> Client.Nom;
		Ign();
		cout << "\n T\x82l\x82phone :  : ";  
		cin >> Client.Tel;
		Ign();
		cout << "\n No Civique : ";  
		cin >> Client.Adresse.No;
		Ign();
		cout << "\n Rue : ";  
		cin >> Client.Adresse.Rue;
		Ign();
		cout << "\n Ville : ";  
		cin >> Client.Adresse.Ville;
		Ign();
		cout << "\n Code Postal : ";  
		cin >> Client.Adresse.Cp;
		Ign();
		Client.NbFilms=0;
		Client.MntDu=0;
					Client.Films[0].No=0;
					Client.Films[0].Titre[40]='0';
					Client.Films[0].Temps=0;
					Client.Films[0].Date.Jour =0;
					Client.Films[0].Date.Mois = 0;
					Client.Films[0].Date.Annee = 0;
					Client.Films[1].No=0;
					Client.Films[1].Titre[40]='0';
					Client.Films[1].Temps=0;
					Client.Films[1].Date.Jour =0;
					Client.Films[1].Date.Mois = 0;
					Client.Films[1].Date.Annee = 0;
					Client.Films[2].No=0;
					Client.Films[2].Titre[40]='0';
					Client.Films[2].Temps=0;
					Client.Films[2].Date.Jour =0;
					Client.Films[2].Date.Mois = 0;
					Client.Films[2].Date.Annee = 0;


		FichierVideo.seekp((ProchainClientValide*sizeof(Client)), ios::beg);
		FichierVideo.write((char*)&Client, sizeof (Client));
	ProchainClientValide++;
	


}
void Ign(void)//ben cin ignore :P
{
cin.ignore( 80, '\n' );
}
void Menu(void)
{
	bool Correct=false;

	while(!Correct)
	{
	
		clrscr();
		gotoxy(1,1);
		cout << "SuperClub VideoCon - La s\x82lection la plus \x82paisse \x85 montr\x82" << "al";
		gotoxy(3,4);
		cout << "1. Nouveau client";
		gotoxy(3,6);
		cout << "2. Dossier du client";
		gotoxy(3,8);
		cout << "3. Location de films";
		gotoxy(3,10);
		cout << "4. Retour des films";
		gotoxy(3,12);
		cout << "5. Liste des films lou\x82s";
		gotoxy(3,14);
		cout << "6. Liste des clients en retard";
		gotoxy(3,16);
		cout << "7. Quitter";
		gotoxy(45,4);
		cout << ProchainClientValide <<" Clients";
		gotoxy(10,18);
		cout << "Entrez votre choix : ";

		switch(_getche())
		{
			case '1':NouveauClient();
	Correct=true;Menu();break;
			case '2':AfficherDossierClient(LireNoClient());
	Correct=true;Menu();break;
			case '3':Location(LireNoClient());
	Correct=true;Menu();break;
			case '4':Retour(LireNoClient());
	Correct=true;Menu();break;
			case '5':ListeDesFilmsLoues();
	Correct=true;Menu();break;
			case '6': ListeClientsRetard();
	Correct=true;Menu();break;
			case '7':
	Correct=true;break;
			default:
	break;
		}
	}
}
void main(void)
{
	// INITIALISATION
					Client.Films[0].No=0;
					Client.Films[0].Titre[40]='0';
					Client.Films[0].Temps=0;
					Client.Films[0].Date.Jour =0;
					Client.Films[0].Date.Mois = 0;
					Client.Films[0].Date.Annee = 0;
					Client.Films[1].No=0;
					Client.Films[1].Titre[40]='0';
					Client.Films[1].Temps=0;
					Client.Films[1].Date.Jour =0;
					Client.Films[1].Date.Mois = 0;
					Client.Films[1].Date.Annee = 0;
					Client.Films[2].No=0;
					Client.Films[2].Titre[40]='0';
					Client.Films[2].Temps=0;
					Client.Films[2].Date.Jour =0;
					Client.Films[2].Date.Mois = 0;
					Client.Films[2].Date.Annee = 0;
// ========= LECTURE DU FICHIER ou CRÉATION ==========

	FichierVideo.open("C:\\VideoCon.bin", ios::in|ios::out|ios::binary);
 if(!FichierVideo)
 {
	clrscr();
	 cout<<"Vous n'avez pas de base de donn\x82" << "es, elle à \x82"<<"t\x82" << " cr\x82"<<"\x82" <<"e!"<<endl;
	 FichierVideo.open("C:\\VideoCon.bin", ios::out|ios::binary);
	 _getch();
	exit(EXIT_FAILURE);
 }
 //
  cout<<"Lecture de la base de donnees: ATTENDEZ...";
 ProchainClientValide=0;
 FichierVideo.read((char*)&Client, sizeof(Client));
 while(!FichierVideo.eof())
 {
  ProchainClientValide++;
  FichierVideo.read((char*)&Client, sizeof(Client));
 }
 cout<<"\n\nIl y a "<<ProchainClientValide<<" etudiants.\n\n"
     <<"\t\tAppuyez sur une touche pour continuer";
 _getch();
 FichierVideo.clear();//Si on veut acceder encore une fois au fichier(acces en ecriture ET lecture).

//ClientTest();
Menu();

// au revoir
clrscr();
FichierVideo.close();
exit(0); //Fournir la valeur 0 pour sortir
gotoxy(34,10);
cout << "Au Revoir!";
_getch();
}

and cvm.h contains

CPP / C++ / C Code:
/***********************************************************************************
  FONCTIONS DE MANIPULATION DE L'ÉCRAN DE SORTIE
************************************************************************************/

#include < windows.h >

// --- Prototypes des fonctions

void clrscr(void);          // effacer l'écran de sortie
void clreol(void);          // effacer le reste de la ligne courante
void clreoscr(void);        // effacer le reste de l'écran de sortie
void gotoxy(int x,int y);   // placer le curseur à la colonne x et à la ligne y  ( l'origine est (0,0) )
int wherex(void);           // retourner la colonne courante 
int wherey(void);           // retourner la ligne courante


// --- Définitions des fonctions

/*********************************************************************************/

void clrscr(void)  
{
	CONSOLE_SCREEN_BUFFER_INFO	csbiInfo;							
	HANDLE	hConsoleOut;
    COORD	Home = {0,0};
	DWORD	dummy;

	hConsoleOut = GetStdHandle(STD_OUTPUT_HANDLE);
	GetConsoleScreenBufferInfo(hConsoleOut,&csbiInfo);

	FillConsoleOutputCharacter(hConsoleOut,' ',csbiInfo.dwSize.X * csbiInfo.dwSize.Y,Home,&dummy);	
	csbiInfo.dwCursorPosition.X = 0;									
	csbiInfo.dwCursorPosition.Y = 0;									
	SetConsoleCursorPosition(hConsoleOut,csbiInfo.dwCursorPosition);	
}

/*********************************************************************************/

void clreol(void)  
{
	CONSOLE_SCREEN_BUFFER_INFO  csbiInfo;							
	HANDLE	hConsoleOut;
    COORD	Home,pos;
	DWORD	dummy;

	hConsoleOut = GetStdHandle(STD_OUTPUT_HANDLE);
	GetConsoleScreenBufferInfo(hConsoleOut,&csbiInfo);

	Home = csbiInfo.dwCursorPosition;
	pos.X = 80 - csbiInfo.dwCursorPosition.X;

	FillConsoleOutputCharacter(hConsoleOut,' ',pos.X,Home,&dummy);
}

/*********************************************************************************/

void clreoscr(void)  
{
	CONSOLE_SCREEN_BUFFER_INFO	csbiInfo;							
	HANDLE	hConsoleOut;
    COORD	Home;
	DWORD	dummy;

	hConsoleOut = GetStdHandle(STD_OUTPUT_HANDLE);
	GetConsoleScreenBufferInfo(hConsoleOut,&csbiInfo);

	Home=csbiInfo.dwCursorPosition;
	FillConsoleOutputCharacter(hConsoleOut,' ',csbiInfo.dwSize.X * csbiInfo.dwSize.Y,Home,&dummy);
}

/*********************************************************************************/

void gotoxy(int x,int y)  
{
	CONSOLE_SCREEN_BUFFER_INFO	csbiInfo;				
	HANDLE	hConsoleOut;

	hConsoleOut = GetStdHandle(STD_OUTPUT_HANDLE);
	GetConsoleScreenBufferInfo(hConsoleOut,&csbiInfo);

	csbiInfo.dwCursorPosition.X = x;									
	csbiInfo.dwCursorPosition.Y = y;									
	SetConsoleCursorPosition(hConsoleOut,csbiInfo.dwCursorPosition);	
}

/*********************************************************************************/

int wherex(void)  
{
	CONSOLE_SCREEN_BUFFER_INFO  csbiInfo;							
	HANDLE	hConsoleOut;
	int X;
    	
	hConsoleOut = GetStdHandle(STD_OUTPUT_HANDLE);
	GetConsoleScreenBufferInfo(hConsoleOut,&csbiInfo);

	X = csbiInfo.dwCursorPosition.X;

	return X;
}


/*********************************************************************************/

int wherey(void)  
{
	CONSOLE_SCREEN_BUFFER_INFO  csbiInfo;							
	HANDLE	hConsoleOut;
	int Y;

	hConsoleOut = GetStdHandle(STD_OUTPUT_HANDLE);
	GetConsoleScreenBufferInfo(hConsoleOut,&csbiInfo);

	Y = csbiInfo.dwCursorPosition.Y;

	return Y;
}

Thx in advance.
  #2  
Old 15-May-2008, 19:21
davekw7x davekw7x is offline
Outstanding Member
 
Join Date: Feb 2004
Location: Left Coast, USA
Posts: 4,627
davekw7x is a splendid one to beholddavekw7x is a splendid one to beholddavekw7x is a splendid one to beholddavekw7x is a splendid one to beholddavekw7x is a splendid one to beholddavekw7x is a splendid one to beholddavekw7x is a splendid one to behold

Re: Problems with char Grids Please save My Life!


Quote:
Originally Posted by essell55
...the following error
Code:
1>d:\tp5\tp5part2\tp5part2\1.cpp(201) : error C2106: '=' : left operand must be l-value 1>d:\tp5\tp5part2\tp5part2\1.cpp(208) : error C2106: '=' : left operand must be l-value 1>d:\tp5\tp5part2\tp5part2\1.cpp(235) : error C2106: '=' : left operand must be l-value
First of all, this has to be wrong:
CPP / C++ / C Code:

using namespace std::string;
There is no such namespace. Maybe you meant to say
CPP / C++ / C Code:
using namespace std;

Now as for the errors

You have:
CPP / C++ / C Code:
struct Films_s
{
	int No;
	char Titre[40];
	time_t Temps;
	Date_s Date;
};
And the errors are (I think):

CPP / C++ / C Code:
.
.
.

    Client.Films[0].Titre=Client.Films[1].Titre;
.
.
.
    Client.Films[1].Titre=Client.Films[2].Titre;
.
.
.
    Client.Films[1].Titre=Client.Films[2].Titre;
.
.
.
You can't use an assignment statement to copy contents of an array to another. Since these are arrays of char, I would assume that they hold C-style "strings" and the contents could be copied with the standard library function strcpy()

Like this:


CPP / C++ / C Code:
    strcpy(Client.Films[0].Titre,Client.Films[1].Titre);
.
.
.
    strcpy(Client.Films[1].Titre,Client.Films[2].Titre);
.
.
.
    strcpy(Client.Films[1].Titre,Client.Films[2].Titre);

(At least, that should get rid of those particular compiler errors.)

Regards,

Dave
  #3  
Old 15-May-2008, 19:28
essell55 essell55 is offline
New Member
 
Join Date: May 2008
Posts: 3
essell55 is on a distinguished road

Re: Problems with char Grids Please save My Life!


Thx a lot!

ok i used strcpy_s (updated code) for the first problem
but now i get

CPP / C++ / C Code:
1>------ Début de la génération : Projet : TP5Part2, Configuration : Debug Win32 ------
1>Compilation en cours...
1>1.cpp
1>d:\tp5\tp5part2\tp5part2\1.cpp(91) : warning C4715: 'LireNoClient' : not all control paths return a value
1>Compilation du manifeste en ressources en cours...
1>Édition des liens en cours...
1>1.obj : error LNK2019: unresolved external symbol "void __cdecl ListeClientsRetard(void)" (?ListeClientsRetard@@YAXXZ) referenced in function "void __cdecl Menu(void)" (?Menu@@YAXXZ)
1>1.obj : error LNK2019: unresolved external symbol "void __cdecl ListeDesFilmsLoues(void)" (?ListeDesFilmsLoues@@YAXXZ) referenced in function "void __cdecl Menu(void)" (?Menu@@YAXXZ)
1>D:\TP5\TP5Part2\Debug\TP5Part2.exe : fatal error LNK1120: 2 unresolved externals
1>Le journal de génération a été enregistré à l'emplacement "file://d:\TP5\TP5Part2\TP5Part2\Debug\BuildLog.htm"
1>TP5Part2 - 3 erreur(s), 1 avertissement(s)
========== Génération : 0 a réussi, 1 a échoué, 0 mis à jour, 0 a été ignoré ==========
  #4  
Old 15-May-2008, 19:32
essell55 essell55 is offline
New Member
 
Join Date: May 2008
Posts: 3
essell55 is on a distinguished road

Re: Problems with char Grids Please save My Life!


Ah damn they were called when commented... well see in a few minutes if i still need help... why oh why did i take c++ LOL
 
 

Recent GIDBlogToyota - 2008 July Promotion by Nihal

Thread Tools Search this Thread
Search this Thread:

Advanced Search
Rate This Thread
Rate This Thread:

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Forum Jump

Similar Threads
Thread Thread Starter Forum Replies Last Post
Pointer initialization causing program abend? emanresu C Programming Language 0 12-Dec-2006 10:36
getting an error while compiling and running using different IDE. jaro C Programming Language 0 25-Aug-2006 09:14
Problems compiling an example (part 2) earachefl CPP / C++ Forum 11 19-May-2006 04:57
Problems compiling an example earachefl CPP / C++ Forum 5 19-May-2006 04:56
Memory cannot be read? dlare9 C Programming Language 3 16-Nov-2005 07:03

Network Sites: GIDNetwork · GIDWebHosts · GIDSearch · Learning Journal by J de Silva, The

All times are GMT -6. The time now is 23:23.


vBulletin, Copyright © 2000 - 2008, Jelsoft Enterprises Ltd.