Welcome Guest ( Log In | Register )

      
Discover the best free computer help!
Learn more about Geeks to Go by taking the tour. Spyware, virus, trojan, fake security or privacy alerts? Read the malware cleaning guide.
 
Reply to this topicStart new topic
C++ techs help me!, C++ abrupt termination..
Encrypted Devil
post Mar 8 2008, 05:50 AM
Post #1


New Member
*
Posts: 4
OS: windows XP



heyyy geeks...
i m a learner in OOP C++ programming...
d problem dat i m facing is the abrupt termination of C++ when i execute a program...let me explain in detail..

wen i run a program..smtimes it runs well and fine widout any problem...but wen i exit the program the TC.exe terminates abruptly sad.gif ....(it also hapens at time wen a fatal error occurs..hwever its natural... smile.gif )

i thnk d reason behind mite be like dis : during d program execution...somehow d memory location of TC.exe mite be gettin overwritten by some or d other component of d program...however dis is my guess... lookaround.gif rolleyes1.gif smile.gif

sooo...is dere neone who can help me out here ??? i want a perfect reason and a solution to that....
smile.gif

Go to the top of the page
 
+Quote Post
Granz00
post Mar 20 2008, 02:20 AM
Post #2


Member
***
Posts: 218
From: South Carolina
OS: Windows XP Media Center Edition



Got any code for us to look at? Got anything else than what you provided? It doesn't seem like you provided anything at all except the knowledge that you have a problem...
Go to the top of the page
 
+Quote Post
Encrypted Devil
post Mar 20 2008, 02:28 AM
Post #3


New Member
*
Posts: 4
OS: windows XP



okkk...
here is my code..
look at the code with ease... smile.gif

//Program implementing a string class and all the related
//operations...

#include "iostream.h"
#include "conio.h"
#include "stdlib.h"


class strings //Class definition
{
char *string; //for the string data

public:
int len; //for lenght of string

strings() //Default constructor
{*string = NULL;len = 0;}

strings(char *a) //Parameterized constructor
{
len = str_len(a);
/*while (*a)
len++;*/
//*a -= len;
string = new char[len+1];
while (*a)
{
*string = *a;
string++;
a++;
}
*string = '\0';
string -= len;
}

// ~strings() //Destructor freeing memory
// {delete []string;}

void getdata() //When the entry is going to be taken from user
{
delete [] string;
char *a;
cout << endl << endl <<"Enter the string to be operated upon (Maxlength = 100): ";
cin.getline (a,100);
len = str_len(a);
//while (*a)
// len++;
//a -= len;
string = new char[len+1];
while (*a)
{
*string = *a;
string ++;
a++;
}
*string = '\0';
string -= len;
}
void displaydata() //Displaying data to the user
{
cout << endl << endl << "Your string is : " << string;
}

//Function Declarations which will operate on the string
void strcpy(strings &);
};

void strings::strcpy (strings &source)
{
delete []string;
string = new char[source.len+1];

while (*source.string)
{
*string = *source.string;
string ++;
source.string++;
}
*string = '\0';
string -= len;
}

int str_len (const char *a)
{
int len = 0;
while (*a)
{
len++;
a++;
}
return len;
}

void main()
{
clrscr();
char *str;
int choice;
strings main_string;

//Taking entry for the main string
main_string.getdata();

clrscr();

do
{
clrscr();
//Providing menu
cout << "\t\tMenu for the operations on the given string" << endl
<< "1. Change the Main String." << endl
<< "2. Display the string." << endl
<< "3. Count the length of the string." << endl
<< "4. Copy a string into the main string." << endl
<< "0. Exit" << endl;

//Taking choice
cout << endl << "Enter the no. of your choice here : ";
cin >> choice;
cin.ignore();

//Taking actions
switch (choice)
{
case 1:
main_string.getdata();
break;
case 2:
main_string.displaydata();
cin.get();
break;
case 3:
cout << endl << "Length of the string = " << main_string.len;
cin.get();
break;
case 4:
cout << endl <<"Enter a string to be copied (Maxlength = 100) : ";
cin.getline(str,100);
strings temp_string (str);
temp_string.displaydata();
cin.get();
main_string.strcpy(temp_string);
break;
case 0:
cout << endl << "\t\t\t\tThank You";
cin.get();
exit(0);
break;
default :
cout << endl << "\t\t\t\tWrong Entry";
cin.get();
break;
}
getch();
} while (choice != 0);

}


i am also attaching the .cpp file...
Go to the top of the page
 
+Quote Post
Encrypted Devil
post Mar 20 2008, 02:28 AM
Post #4


New Member
*
Posts: 4
OS: windows XP



okkk...
here is my code..
look at the code with ease... smile.gif

CODE
//Program implementing a string class and all the related
//operations...

#include "iostream.h"
#include "conio.h"
#include "stdlib.h"


class strings //Class definition
{
    char *string; //for the string data

    public:
        int len;      //for lenght of string

        strings() //Default constructor
        {*string = NULL;len = 0;}

        strings(char *a) //Parameterized constructor
        {
            len = str_len(a);
            /*while (*a)
                len++;*/
            //*a -= len;
            string = new char[len+1];
            while (*a)
            {
                *string = *a;
                string++;
                a++;
            }
            *string = '\0';
            string -= len;
        }

//        ~strings() //Destructor freeing memory
//        {delete []string;}

        void getdata() //When the entry is going to be taken from user
        {
            delete [] string;
            char *a;
            cout << endl << endl <<"Enter the string to be operated upon (Maxlength = 100): ";
            cin.getline (a,100);
            len = str_len(a);
            //while (*a)
              //    len++;
            //a -= len;
            string = new char[len+1];
            while (*a)
            {
                *string = *a;
                string ++;
                a++;
            }
            *string = '\0';
            string -= len;
        }
        void displaydata() //Displaying data to the user
        {
            cout << endl << endl << "Your string is : " << string;
        }

        //Function Declarations which will operate on the string
        void strcpy(strings &);
};

void strings::strcpy (strings &source)
{
    delete []string;
    string = new char[source.len+1];

    while (*source.string)
    {
        *string = *source.string;
        string ++;
        source.string++;
    }
    *string = '\0';
    string -= len;
}

int str_len (const char *a)
{
    int len = 0;
    while (*a)
    {
        len++;
        a++;
    }
    return len;
}

void main()
{
    clrscr();
    char *str;
    int choice;
    strings main_string;

    //Taking entry for the main string
    main_string.getdata();

    clrscr();

do
{
    clrscr();
    //Providing menu
    cout << "\t\tMenu for the operations on the given string" << endl
        << "1. Change the Main String." << endl
        << "2. Display the string." << endl
        << "3. Count the length of the string." << endl
        << "4. Copy a string into the main string." << endl
        << "0. Exit" << endl;

    //Taking choice
    cout << endl << "Enter the no. of your choice here : ";
    cin >> choice;
    cin.ignore();

    //Taking actions
    switch (choice)
    {
        case 1:
            main_string.getdata();
        break;
        case 2:
            main_string.displaydata();
            cin.get();
        break;
        case 3:
            cout << endl << "Length of the string = " << main_string.len;
            cin.get();
        break;
        case 4:
            cout << endl <<"Enter a string to be copied (Maxlength = 100) : ";
            cin.getline(str,100);
            strings temp_string (str);
            temp_string.displaydata();
            cin.get();
            main_string.strcpy(temp_string);
        break;
        case 0:
            cout << endl << "\t\t\t\tThank You";
            cin.get();
            exit(0);
        break;
        default :
            cout << endl << "\t\t\t\tWrong Entry";
            cin.get();
        break;
    }
    getch();
} while (choice != 0);

}


now check out the code...
Go to the top of the page
 
+Quote Post

Reply to this topicStart new topic
1 User(s) are reading this topic (1 Guests and 0 Anonymous Users)
0 Members:

 

Collapse

> Similar Topics

    Topic Title Replies / Views Topic Information
No new   32 / 526 27th October 2008 - 07:22 AM
th3gh05t started - last by Rorschach112
No new   16 / 839 2nd November 2008 - 04:33 PM
R.A dakiz03 started - last by Egwene
No New Posts   3 / 300 15th November 2008 - 11:52 AM
panda93 started - last by Murray S.
No New Posts   9 / 124 29th November 2008 - 10:18 AM
momto3 started - last by Essexboy

RSS Time is now: 2nd December 2008 - 02:23 AM
Advertisements do not imply our endorsement of that product or service. The forum is run by volunteers who donate their time and expertise. We make every attempt to ensure that the help and advice posted is accurate and will not cause harm to your computer. However, we do not guarantee that they are accurate and they are to be used at your own risk.