UGN Security

hmm my output is all funky... c++ help

Posted By: Rapture

hmm my output is all funky... c++ help - 09/18/04 08:31 AM

Just trying to store movie title, year, rating.

here's my code...

#include <iostream>
#include <cstdio>
using namespace std;

class Movie
    	Movie(char title, int year, int rating);	
	void print();
      char m_title;
    	int m_year;
    	int m_rating;

Movie::Movie(char title, int year, int rating)
    m_year = year;
    m_rating = rating;
    m_title = title;

    cout << "Year: " << m_year << "," << m_title << ", rating = " << m_rating << endl;

    Movie *data[100];	// array to hold the dynamically created Pair objects
    int num_movies = 0;	// the number of pair objects we have created
    char *title;
    int year, rating;		// hold values read from cin

    // as long as there is an integer to read, read it (as long as not EOF)
    while (cin >> title) 
	//read 2nd integer in pair (dangerous assumption, what if no more nums?)
        cin >> year; 
        cin >> rating;

	// instantiate a new Pair object using the new operator
	data[num_movies] = new Movie(*title, year, rating);

	// we have read another pair of integers, update our counter

    // print out all the pairs pointed to by the data array
    for (int i = 0; i < num_movies; i++)
    	cout << i << endl;

after i compile and run i'm getting crazy output like this:

year: -3242342 , rating = -12342354

won't dispaly the title at all and give me crazy output like that. Any ideas on what I'm doing wrong here?

Posted By: zenon

Re: hmm my output is all funky... c++ help - 09/29/04 12:27 AM

First of all, your class has a litle mistake.

the char title;
shoulde be char *title;
this because you know hold a single char.

So, I supose that this maybe [censored] it.
Try it out, also do some controlls by adding some few lines like;

cout << title << endl;

just before reading data with

cin >> year;

try that.
© 2018 UGN Security Forum