devxlogo

String handling in C++

String handling in C++

Question:
What is the best way to manipulate strings in C++?

Answer:
Here is an example.

#include void foo (char *instring){	// Declare char array big enough to read in input	char read_string[80];	cin.readline(read_string,80);	if(strcmp(read_string,instring) == 0) // strcmp returns 0 if the strings										  // match 	{		// do something	}	else	{		// strings do not match	}}
The above approach will work, but it needs a lots more code to make it reallyrobust, e.g. what if the instring was sent in as null, or what if it was 80 chars in length, etc.

So to avoid these commonly occurring problems it is best to use some kindof String class to do all of your string processing. Almost all compilervendors include a String class with their implementations. String classes provide methods and operators to construct, assign, copy, read and write tostreams and many more operations.

Here’s how the above example would look if I had used the STL string classinstead of char arrays and pointers:

#include #include void foo(const string & instring){	string read_string; // construct a string object	cin >> read_string;	if (instring == read_string)		// .. do something else		//… do something else.}

See also  Professionalism Starts in Your Inbox: Keys to Presenting Your Best Self in Email
devxblackblue

About Our Editorial Process

At DevX, we’re dedicated to tech entrepreneurship. Our team closely follows industry shifts, new products, AI breakthroughs, technology trends, and funding announcements. Articles undergo thorough editing to ensure accuracy and clarity, reflecting DevX’s style and supporting entrepreneurs in the tech sphere.

See our full editorial policy.

About Our Journalist