+ 6
<string> contains the declaration for a string class intended to represent the string data type in other programming languages.
It contains member functions like length(), assign(), c_str(), etc; overloaded operators like + for concatenation, == for comparision, etc; and friend functions for conversions from and to other data types quickly.
The class declaration is far more safe to handle and use even in terms of memory than a character based array. Also, the class objects can also be used as streams for I/O operations, by using the <sstream> header...
On the other hand, <string.h>, now <cstring> after standardisation, is a C library containing extra functions for executing string operations on character arrays. It contains functions like strcmp() for comparision, strlen() for length, strcat() for concatenation and other functions. All strings are assumed to be character pointers/arrays in these functions.