dcsimg
Login | Register   
RSS Feed
Download our iPhone app
TODAY'S HEADLINES  |   ARTICLE ARCHIVE  |   FORUMS  |   TIP BANK
Browse DevX
Sign up for e-mail newsletters from DevX

By submitting your information, you agree that devx.com may send you DevX offers via email, phone and text message, as well as email offers about other products and services that DevX believes may be of interest to you. DevX will process your information in accordance with the Quinstreet Privacy Policy.


Tip of the Day
Language: C++
Expertise: Beginner
Mar 27, 1997

WEBINAR:

On-Demand

Application Security Testing: An Integral Part of DevOps


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 really robust, 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 kind of String class to do all of your string processing. Almost all compiler vendors include a String class with their implementations. String classes provide methods and operators to construct, assign, copy, read and write to streams and many more operations.

Here's how the above example would look if I had used the STL string class instead 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.
}
DevX Pro
 
Comment and Contribute

 

 

 

 

 


(Maximum characters: 1200). You have 1200 characters left.

 

 

Sitemap
×
We have made updates to our Privacy Policy to reflect the implementation of the General Data Protection Regulation.
Thanks for your registration, follow us on our social networks to keep up-to-date