A<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ru">
		<id>http://cppe.ru/index.php?action=history&amp;feed=atom&amp;title=C%2B%2B_Tutorial%2Fstring%2Fstring</id>
		<title>C++ Tutorial/string/string - История изменений</title>
		<link rel="self" type="application/atom+xml" href="http://cppe.ru/index.php?action=history&amp;feed=atom&amp;title=C%2B%2B_Tutorial%2Fstring%2Fstring"/>
		<link rel="alternate" type="text/html" href="http://cppe.ru/index.php?title=C%2B%2B_Tutorial/string/string&amp;action=history"/>
		<updated>2026-04-11T03:32:44Z</updated>
		<subtitle>История изменений этой страницы в вики</subtitle>
		<generator>MediaWiki 1.30.0</generator>

	<entry>
		<id>http://cppe.ru/index.php?title=C%2B%2B_Tutorial/string/string&amp;diff=2771&amp;oldid=prev</id>
		<title> в 14:21, 25 мая 2010</title>
		<link rel="alternate" type="text/html" href="http://cppe.ru/index.php?title=C%2B%2B_Tutorial/string/string&amp;diff=2771&amp;oldid=prev"/>
				<updated>2010-05-25T14:21:17Z</updated>
		
		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;tr style=&quot;vertical-align: top;&quot; lang=&quot;ru&quot;&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;← Предыдущая&lt;/td&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;Версия 14:21, 25 мая 2010&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; style=&quot;text-align: center;&quot; lang=&quot;ru&quot;&gt;&lt;div class=&quot;mw-diff-empty&quot;&gt;(нет различий)&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</summary>
			</entry>

	<entry>
		<id>http://cppe.ru/index.php?title=C%2B%2B_Tutorial/string/string&amp;diff=2772&amp;oldid=prev</id>
		<title>Admin: 1 версия:&amp;#32;Импорт контента...</title>
		<link rel="alternate" type="text/html" href="http://cppe.ru/index.php?title=C%2B%2B_Tutorial/string/string&amp;diff=2772&amp;oldid=prev"/>
				<updated>2010-05-25T10:30:28Z</updated>
		
		<summary type="html">&lt;p&gt;1 версия: Импорт контента...&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Новая страница&lt;/b&gt;&lt;/p&gt;&lt;div&gt;==copy constructor==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;cpp&amp;quot;&amp;gt;#include &amp;lt;iostream&amp;gt;&lt;br /&gt;
using std::cout;&lt;br /&gt;
using std::endl;&lt;br /&gt;
#include &amp;lt;string&amp;gt;&lt;br /&gt;
using std::string;&lt;br /&gt;
int main()&lt;br /&gt;
{&lt;br /&gt;
   string s1( &amp;quot;AA1234567890asdfasdf&amp;quot; );&lt;br /&gt;
   string s2( &amp;quot; AAB&amp;quot; );&lt;br /&gt;
   string s3;&lt;br /&gt;
   // test copy constructor&lt;br /&gt;
   string *s4Ptr = new string( s1 );  &lt;br /&gt;
   cout &amp;lt;&amp;lt; &amp;quot;\n*s4Ptr = &amp;quot; &amp;lt;&amp;lt; *s4Ptr &amp;lt;&amp;lt; &amp;quot;\n\n&amp;quot;;&lt;br /&gt;
   return 0;&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
&amp;lt;pre class=codeResult&amp;gt;*s4Ptr = AA1234567890asdfasdf&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Create a string from a vector&amp;lt;char&amp;gt;==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;cpp&amp;quot;&amp;gt;#include &amp;lt;iostream&amp;gt;&lt;br /&gt;
#include &amp;lt;string&amp;gt;&lt;br /&gt;
#include &amp;lt;cctype&amp;gt;&lt;br /&gt;
#include &amp;lt;algorithm&amp;gt;&lt;br /&gt;
#include &amp;lt;vector&amp;gt;&lt;br /&gt;
using namespace std;&lt;br /&gt;
int main()&lt;br /&gt;
{&lt;br /&gt;
  string strA(&amp;quot;This is a test.&amp;quot;);&lt;br /&gt;
  // Create a string from a vector&amp;lt;char&amp;gt;.&lt;br /&gt;
  vector&amp;lt;char&amp;gt; vec;&lt;br /&gt;
  for(int i=0; i &amp;lt; 10; ++i)&lt;br /&gt;
    vec.push_back(&amp;quot;A&amp;quot;+i);&lt;br /&gt;
  string strC(vec.begin(), vec.end());&lt;br /&gt;
  cout &amp;lt;&amp;lt; &amp;quot;Here is strC, which is constructed from a vector:\n&amp;quot;;&lt;br /&gt;
  cout &amp;lt;&amp;lt; strC &amp;lt;&amp;lt; endl;&lt;br /&gt;
  return 0;&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Create a string object using another string object==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;cpp&amp;quot;&amp;gt;#include &amp;lt;iostream&amp;gt;&lt;br /&gt;
#include &amp;lt;string&amp;gt;&lt;br /&gt;
using namespace std;&lt;br /&gt;
int main()&lt;br /&gt;
{&lt;br /&gt;
  string str1(&amp;quot;A&amp;quot;);&lt;br /&gt;
  string str2(&amp;quot;B&amp;quot;);&lt;br /&gt;
  string str3(&amp;quot;G&amp;quot;);&lt;br /&gt;
  string str4;&lt;br /&gt;
  cout &amp;lt;&amp;lt; &amp;quot;  str1: &amp;quot; &amp;lt;&amp;lt; str1 &amp;lt;&amp;lt; endl;&lt;br /&gt;
  cout &amp;lt;&amp;lt; &amp;quot;  str2: &amp;quot; &amp;lt;&amp;lt; str2 &amp;lt;&amp;lt; endl;&lt;br /&gt;
  cout &amp;lt;&amp;lt; &amp;quot;  str3: &amp;quot; &amp;lt;&amp;lt; str3 &amp;lt;&amp;lt; &amp;quot;\n\n&amp;quot;;&lt;br /&gt;
  // Create a string object using another string object.&lt;br /&gt;
  cout &amp;lt;&amp;lt; &amp;quot;Initialize str5 with the contents of str1.\n&amp;quot;;&lt;br /&gt;
  string str5(str1);&lt;br /&gt;
  cout &amp;lt;&amp;lt; &amp;quot;str5: &amp;quot; &amp;lt;&amp;lt; str5 &amp;lt;&amp;lt; &amp;quot;\n\n&amp;quot;;&lt;br /&gt;
  return 0;&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Define a string variable, assign a value and display it==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;cpp&amp;quot;&amp;gt;#include &amp;lt;iostream&amp;gt;&lt;br /&gt;
#include &amp;lt;string&amp;gt;&lt;br /&gt;
using namespace std ;&lt;br /&gt;
using std::cout;       &lt;br /&gt;
using std::cin;&lt;br /&gt;
int main()&lt;br /&gt;
{&lt;br /&gt;
  string s = &amp;quot;www.java2s.com \n&amp;quot;;&lt;br /&gt;
  cout &amp;lt;&amp;lt;s; &lt;br /&gt;
  return 0;&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
&amp;lt;pre class=codeResult&amp;gt;www.java2s.com&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Input from an istringstream object.==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;cpp&amp;quot;&amp;gt;#include &amp;lt;iostream&amp;gt;&lt;br /&gt;
#include &amp;lt;string&amp;gt;&lt;br /&gt;
#include &amp;lt;sstream&amp;gt;&lt;br /&gt;
using namespace std;&lt;br /&gt;
main()&lt;br /&gt;
{&lt;br /&gt;
   string input( &amp;quot;Input test 123 4.7 A&amp;quot; );&lt;br /&gt;
   istringstream inputString( input );&lt;br /&gt;
   string string1, string2;&lt;br /&gt;
   int i;&lt;br /&gt;
   double d;&lt;br /&gt;
   char c;&lt;br /&gt;
   inputString &amp;gt;&amp;gt; string1 &amp;gt;&amp;gt; string2 &amp;gt;&amp;gt; i &amp;gt;&amp;gt; d &amp;gt;&amp;gt; c;&lt;br /&gt;
   cout &amp;lt;&amp;lt; &amp;quot;The following items were extracted\n&amp;quot;&lt;br /&gt;
        &amp;lt;&amp;lt; &amp;quot;from the istringstream object:&amp;quot;&lt;br /&gt;
        &amp;lt;&amp;lt; &amp;quot;\nstring: &amp;quot; &amp;lt;&amp;lt; string1 &lt;br /&gt;
        &amp;lt;&amp;lt; &amp;quot;\nstring: &amp;quot; &amp;lt;&amp;lt; string2 &lt;br /&gt;
        &amp;lt;&amp;lt; &amp;quot;\n   int: &amp;quot; &amp;lt;&amp;lt; i &lt;br /&gt;
        &amp;lt;&amp;lt; &amp;quot;\ndouble: &amp;quot; &amp;lt;&amp;lt; d &lt;br /&gt;
        &amp;lt;&amp;lt; &amp;quot;\n  char: &amp;quot; &amp;lt;&amp;lt; c;&lt;br /&gt;
   // attempt to read from empty stream&lt;br /&gt;
   long l;&lt;br /&gt;
   if ( inputString &amp;gt;&amp;gt; l )&lt;br /&gt;
      cout &amp;lt;&amp;lt; &amp;quot;\n\nlong value is: &amp;quot; &amp;lt;&amp;lt; l &amp;lt;&amp;lt; endl;&lt;br /&gt;
   else&lt;br /&gt;
      cout &amp;lt;&amp;lt; &amp;quot;\n\ninputString is empty&amp;quot; &amp;lt;&amp;lt; endl;&lt;br /&gt;
   return 0;&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Loop through the string array==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;cpp&amp;quot;&amp;gt;#include &amp;lt;iostream&amp;gt;&lt;br /&gt;
#include &amp;lt;list&amp;gt;&lt;br /&gt;
#include &amp;lt;algorithm&amp;gt;&lt;br /&gt;
#include &amp;lt;string&amp;gt;&lt;br /&gt;
using namespace std;&lt;br /&gt;
int main( ) {&lt;br /&gt;
   string arrStr[5] = {&amp;quot;A&amp;quot;, &amp;quot;B&amp;quot;, &amp;quot;C&amp;quot;, &amp;quot;D&amp;quot;, &amp;quot;E&amp;quot;};&lt;br /&gt;
   for (string* p = &amp;amp;arrStr[0]; p != &amp;amp;arrStr[5]; ++p) {&lt;br /&gt;
      cout &amp;lt;&amp;lt; *p &amp;lt;&amp;lt; endl;&lt;br /&gt;
   }&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
&amp;lt;pre class=codeResult&amp;gt;A&lt;br /&gt;
B&lt;br /&gt;
C&lt;br /&gt;
D&lt;br /&gt;
E&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==string basics==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;cpp&amp;quot;&amp;gt;#include &amp;lt;iostream&amp;gt;&lt;br /&gt;
#include &amp;lt;string&amp;gt;&lt;br /&gt;
using namespace std;&lt;br /&gt;
int main()&lt;br /&gt;
{&lt;br /&gt;
  string str1(&amp;quot;Alpha&amp;quot;);&lt;br /&gt;
  string str2(&amp;quot;Beta&amp;quot;);&lt;br /&gt;
  string str3(&amp;quot;Omega&amp;quot;);&lt;br /&gt;
  string str4;&lt;br /&gt;
  // assign a string&lt;br /&gt;
  str4 = str1; &lt;br /&gt;
  cout &amp;lt;&amp;lt; str1 &amp;lt;&amp;lt; &amp;quot;\n&amp;quot; &amp;lt;&amp;lt; str3 &amp;lt;&amp;lt; &amp;quot;\n&amp;quot;;&lt;br /&gt;
  // concatenate two strings&lt;br /&gt;
  str4 = str1 + str2; &lt;br /&gt;
  cout &amp;lt;&amp;lt; str4 &amp;lt;&amp;lt; &amp;quot;\n&amp;quot;;&lt;br /&gt;
  // concatenate a string with a C-string&lt;br /&gt;
  str4 = str1 + &amp;quot; to &amp;quot; + str3;&lt;br /&gt;
  cout &amp;lt;&amp;lt; str4 &amp;lt;&amp;lt; &amp;quot;\n&amp;quot;;&lt;br /&gt;
  // compare strings&lt;br /&gt;
  if(str3 &amp;gt; str1) cout &amp;lt;&amp;lt; &amp;quot;str3 &amp;gt; str1\n&amp;quot;;&lt;br /&gt;
  if(str3 == str1+str2)&lt;br /&gt;
    cout &amp;lt;&amp;lt; &amp;quot;str3 == str1+str2\n&amp;quot;;&lt;br /&gt;
  /* A string object can also be &lt;br /&gt;
     assigned a normal string. */&lt;br /&gt;
  str1 = &amp;quot;This is a null-terminated string.\n&amp;quot;;&lt;br /&gt;
  cout &amp;lt;&amp;lt; str1;&lt;br /&gt;
  // create a string object using another string object&lt;br /&gt;
  string str5(str1);&lt;br /&gt;
  cout &amp;lt;&amp;lt; str5;&lt;br /&gt;
  // input a string&lt;br /&gt;
  cout &amp;lt;&amp;lt; &amp;quot;Enter a string: &amp;quot;;&lt;br /&gt;
  cin &amp;gt;&amp;gt; str5;&lt;br /&gt;
  cout &amp;lt;&amp;lt; str5;&lt;br /&gt;
  return 0;&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
&amp;lt;pre class=codeResult&amp;gt;Alpha&lt;br /&gt;
Omega&lt;br /&gt;
AlphaBeta&lt;br /&gt;
Alpha to Omega&lt;br /&gt;
str3 &amp;gt; str1&lt;br /&gt;
This is a null-terminated string.&lt;br /&gt;
This is a null-terminated string.&lt;br /&gt;
Enter a string: a string&lt;br /&gt;
a&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Using a dynamically allocated ostringstream object.==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;cpp&amp;quot;&amp;gt;#include &amp;lt;iostream&amp;gt;&lt;br /&gt;
#include &amp;lt;string&amp;gt;&lt;br /&gt;
#include &amp;lt;sstream&amp;gt;&lt;br /&gt;
using namespace std;&lt;br /&gt;
main()&lt;br /&gt;
{&lt;br /&gt;
   ostringstream outputString;&lt;br /&gt;
   string s1( &amp;quot;Output of several data types &amp;quot; ),&lt;br /&gt;
          s2( &amp;quot;to an ostringstream object:&amp;quot; ),&lt;br /&gt;
          s3( &amp;quot;\n        double: &amp;quot; ),&lt;br /&gt;
          s4( &amp;quot;\n           int: &amp;quot; ),&lt;br /&gt;
          s5( &amp;quot;\naddress of int: &amp;quot; );&lt;br /&gt;
   double d = 123.4567;&lt;br /&gt;
   int i = 22;&lt;br /&gt;
   outputString &amp;lt;&amp;lt; s1 &amp;lt;&amp;lt; s2 &amp;lt;&amp;lt; s3 &amp;lt;&amp;lt; d &amp;lt;&amp;lt; s4 &amp;lt;&amp;lt; i &amp;lt;&amp;lt; s5 &amp;lt;&amp;lt; &amp;amp;i;&lt;br /&gt;
   cout &amp;lt;&amp;lt; &amp;quot;outputString contains:\n&amp;quot; &amp;lt;&amp;lt; outputString.str();&lt;br /&gt;
   outputString &amp;lt;&amp;lt; &amp;quot;\nmore characters added&amp;quot;;&lt;br /&gt;
   cout &amp;lt;&amp;lt; &amp;quot;\n\nafter additional stream insertions,\n&amp;quot;&lt;br /&gt;
        &amp;lt;&amp;lt; &amp;quot;outputString contains:\n&amp;quot; &amp;lt;&amp;lt; outputString.str() &lt;br /&gt;
        &amp;lt;&amp;lt; endl;&lt;br /&gt;
   return 0;&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;/div&gt;</summary>
		<author><name>Admin</name></author>	</entry>

	</feed>