Write a program to define a class “string” using constructor initialize two string objects with given strings and write necessary functions to concatenate and display the strings.

Sep 2, 2019

Source code:

//program to concatenate two strings

#include <iostream>
#include <cstring>

using namespace std;

class String{
	private:
		char *string_array; //string array pointer
	public:
		String(const char *in_str)//parameterized constructor
		{
			int SIZE_STRING = sizeof(in_str);
			//allocating memory
			string_array = new char[SIZE_STRING + 1];

			// copying all the string characters
			//you can copy string without using
			//library functions
			strcpy(string_array, in_str);
		}

        void concat(String sobj){
            int l1, l2;
            l1 = strlen(string_array);
            l2 = strlen(sobj.string_array);
            char *str_temp;
            str_temp = new char[l1 + 1];
            strcpy(str_temp, string_array);

            delete [] string_array;
            string_array = new char[l1 + l2 + 1];

            strcpy(string_array, str_temp);
            strcat(string_array, sobj.string_array);
        }

		void display(){
			cout<<string_array<<endl;
		}
		~String(){
			// releasing the memory with destructor
			delete [] string_array;
		}
};

int main(){
    String s1("hello "), s2("nepal"), s3(" i am kamal");
    s1.display();
    s2.display();
    s1.concat(s2);
    s1.display();
    s1.concat(s3);
    s1.display();

    return 0;
}

 

Sample Run:

hello 
nepal
hello nepal
hello nepal i am kamal

 

Related


Tools/Apps





© Nepal Exchange Rates