<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[CStrings alphabetisch sortieren]]></title><description><![CDATA[<p>hallo, bin gerade dabei mit Strings herumzuspielen.<br />
Habe die folgende funktion angefangen die einen String übergeben bekommt,<br />
den sie passend zurechtschneidet und dann datensatzweise in einen array<br />
speichert:<br />
user_array[i][0] =&gt; Vorname<br />
user_array[i][1] =&gt; Name<br />
user_array[i][2] =&gt; Personal-Nr</p>
<p>ich will dann die datensätze alphabetisch nach Nachnamen sortieren,<br />
dann daraus wieder einen String in passendem Format bilden, der<br />
dann rückgegeben wird</p>
<p>Hier, was ich bis jetzt getippelt hab:</p>
<pre><code class="language-cpp">CString CNewUser::user_sort(CString userdaten)
{

	// Datensätze in den Array einlesen ///////////////////////////////////////////////
	int i=0, pk_position=0, j, stringlaenge;
	CString bearbeiten = userdaten;
	CString user_array[1000][3];

	stringlaenge = strlen(userdaten);
	pk_position = bearbeiten.Find('\n', 0);

	while (pk_position != -1)
	{
		for (j=0; j&lt;3; j++)
		{		
			user_array[i][j] = bearbeiten.Left(pk_position);
			bearbeiten = bearbeiten.Mid(pk_position+1, strlen(bearbeiten));	
			pk_position = bearbeiten.Find('\n', 0);
		}		
		i++;
	}

	/////////////////////////////////////////////////////////////////////////////////

	return bearbeiten; // da wird zum Schluss der sortierte array
					   // wieder zu einem passenden String zusam-
					   // mengesetzt und bildet Rückgabewert
}
</code></pre>
<p>Weiss da jemand, ob es da ne gute Funktion für gibt? bubblesort fände ich hier<br />
viel zu umständlich....</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/67913/cstrings-alphabetisch-sortieren</link><generator>RSS for Node</generator><lastBuildDate>Sat, 06 Jun 2026 13:35:31 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/67913.rss" rel="self" type="application/rss+xml"/><pubDate>Fri, 12 Mar 2004 17:56:43 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to CStrings alphabetisch sortieren on Fri, 12 Mar 2004 17:56:43 GMT]]></title><description><![CDATA[<p>hallo, bin gerade dabei mit Strings herumzuspielen.<br />
Habe die folgende funktion angefangen die einen String übergeben bekommt,<br />
den sie passend zurechtschneidet und dann datensatzweise in einen array<br />
speichert:<br />
user_array[i][0] =&gt; Vorname<br />
user_array[i][1] =&gt; Name<br />
user_array[i][2] =&gt; Personal-Nr</p>
<p>ich will dann die datensätze alphabetisch nach Nachnamen sortieren,<br />
dann daraus wieder einen String in passendem Format bilden, der<br />
dann rückgegeben wird</p>
<p>Hier, was ich bis jetzt getippelt hab:</p>
<pre><code class="language-cpp">CString CNewUser::user_sort(CString userdaten)
{

	// Datensätze in den Array einlesen ///////////////////////////////////////////////
	int i=0, pk_position=0, j, stringlaenge;
	CString bearbeiten = userdaten;
	CString user_array[1000][3];

	stringlaenge = strlen(userdaten);
	pk_position = bearbeiten.Find('\n', 0);

	while (pk_position != -1)
	{
		for (j=0; j&lt;3; j++)
		{		
			user_array[i][j] = bearbeiten.Left(pk_position);
			bearbeiten = bearbeiten.Mid(pk_position+1, strlen(bearbeiten));	
			pk_position = bearbeiten.Find('\n', 0);
		}		
		i++;
	}

	/////////////////////////////////////////////////////////////////////////////////

	return bearbeiten; // da wird zum Schluss der sortierte array
					   // wieder zu einem passenden String zusam-
					   // mengesetzt und bildet Rückgabewert
}
</code></pre>
<p>Weiss da jemand, ob es da ne gute Funktion für gibt? bubblesort fände ich hier<br />
viel zu umständlich....</p>
]]></description><link>https://www.c-plusplus.net/forum/post/479255</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/479255</guid><dc:creator><![CDATA[Bummsfallera]]></dc:creator><pubDate>Fri, 12 Mar 2004 17:56:43 GMT</pubDate></item><item><title><![CDATA[Reply to CStrings alphabetisch sortieren on Fri, 12 Mar 2004 18:50:48 GMT]]></title><description><![CDATA[<p>ich könnt dir an deinem anatz helfen, aber ehrlich gesagt kein bock.</p>
<p>denn du willst doch echt nicht in ein 2d array die datensätze speichern?????? das macht glaub keiner so. und dann auch noch vorher fuer 1000*3 speicherplaetze speicher reservieren. ne oder? bekommst du taeglich RAM geschenkt? hehe <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f609.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--winking_face"
      title=";)"
      alt="😉"
    /></p>
<p>mach doch n struct</p>
<pre><code class="language-cpp">struct
{
CString Vorname;
CString Name;
CString PersNr;
}

// dann nicht ein array nehmen sondern vector ( &lt;vector&gt; klasse !! )
// schau in einem toturial in google wegen vector oder hier im forum.
// dann musst dir nicht so gedanken machen wegen dynamisch speicher anfordern!!!!
</code></pre>
<p>tue dir echt den gefallen. sowas wirst du immer wieder brauchen, glaub mir die &quot;muehe&quot; lohnt sich. dann kannst auch einfach sortieren aufsteigend ect,</p>
<pre><code class="language-cpp">m_meinVector.name.Sort();  // irgendwie so, keine zeit grad nachzuschauen
</code></pre>
<p>also checks ab. wenn du dann noch fragen hast, helf ich dir gern weiter, aber so, nene du</p>
<p>mfg<br />
fletscher</p>
]]></description><link>https://www.c-plusplus.net/forum/post/479306</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/479306</guid><dc:creator><![CDATA[fletscher]]></dc:creator><pubDate>Fri, 12 Mar 2004 18:50:48 GMT</pubDate></item><item><title><![CDATA[Reply to CStrings alphabetisch sortieren on Fri, 12 Mar 2004 18:54:13 GMT]]></title><description><![CDATA[<p>hehe, thx 2 u!!!</p>
<p>ach ja struct, lange nicht mehr gebraucht, aber ich glaube ich sollte es mir<br />
mal wieder anschaun. hast ja recht :p<br />
war nur so zum testen, da ich gerade ne chipkartengesteuerte stempeluhr baue.<br />
da hat es mich nur interessiert, obs da überhaupt ne funktion zu string-alpha-<br />
sort gibt.</p>
<p>also kurz: DANK DIR, UND EIN SCHÖNES WEEKEND!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/479313</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/479313</guid><dc:creator><![CDATA[Bummsfallera]]></dc:creator><pubDate>Fri, 12 Mar 2004 18:54:13 GMT</pubDate></item><item><title><![CDATA[Reply to CStrings alphabetisch sortieren on Fri, 12 Mar 2004 23:18:10 GMT]]></title><description><![CDATA[<p>kein thema</p>
<p>und schau dir struct an und die vector klasse</p>
<p>dann kannst gleich ein element dranhängen mit pushup</p>
<p>wenn du spezielle vectoren hast<br />
eine membervarible die sich merkt wieviel elemente du hast</p>
<p>dann musst halt rezise verwenden, welches eines grösser ist als die momentane menge</p>
<p>und dann verwendest du acuh keine arrays mehr und schon gar nicht ein 2D array zum abspeichern von adressdaten ect.</p>
<p>wenn du dann noch fragen hast, gerne immer zu.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/479440</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/479440</guid><dc:creator><![CDATA[fletscher]]></dc:creator><pubDate>Fri, 12 Mar 2004 23:18:10 GMT</pubDate></item><item><title><![CDATA[Reply to CStrings alphabetisch sortieren on Fri, 12 Mar 2004 23:54:51 GMT]]></title><description><![CDATA[<p>Danke, ist lieb von dir.<br />
ich kann allerdings erst montag mich wieder damit beschäftigen, da ich am we<br />
durcharbeite <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f61e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--disappointed_face"
      title=":("
      alt="😞"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/479448</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/479448</guid><dc:creator><![CDATA[Bummsfallera]]></dc:creator><pubDate>Fri, 12 Mar 2004 23:54:51 GMT</pubDate></item><item><title><![CDATA[Reply to CStrings alphabetisch sortieren on Sat, 13 Mar 2004 09:01:18 GMT]]></title><description><![CDATA[<p>hallo, konnte es heute morgen nicht lassen.....<br />
Ist das für dich jetzt besser so? <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f603.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--grinning_face_with_big_eyes"
      title=":D"
      alt="😃"
    /> <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f603.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--grinning_face_with_big_eyes"
      title=":D"
      alt="😃"
    /> <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f603.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--grinning_face_with_big_eyes"
      title=":D"
      alt="😃"
    /></p>
<pre><code class="language-cpp">CStempeluhrView* stempeluhrview;	
	CString user_datenbank_pfad2 = stempeluhrview -&gt; prog_pfad() + &quot;\\system\\usr\\usr.mfk&quot;;

	// User-Datei einlesen und in CString strText speichern
	CFile f2(user_datenbank_pfad2, CFile::modeRead); 
	char* sz2 = new char[f2.GetLength()+1];

	f2.Read(sz2, f2.GetLength());
	sz2[f2.GetLength()] = 0;
	f2.Close();
	CString strText2;
	strText2.Format(&quot;%s&quot;, sz2);
	delete[] sz2;
	int i2=0, pk_position2=0, j2, stringlaenge2;
	CString bearbeiten2 = strText2;

	stringlaenge2 = strlen(strText2);
	pk_position2 = bearbeiten2.Find('\n', 0);

	struct personaldaten
	{
		CString Vorname;
		CString Name;
		CString PK;
	}pos_memory[100];

	while (pk_position2 != -1)
	{
		for (j2=0; j2&lt;3; j2++)
		{			
			switch(j2)
			{
				case 0:
					pos_memory[i2].Vorname = bearbeiten2.Left(pk_position2);
					break;

				case 1:
					pos_memory[i2].Name = bearbeiten2.Left(pk_position2);	
					break;

				case 2:
					pos_memory[i2].PK = bearbeiten2.Left(pk_position2);
					break;

				default: break;
			}

		bearbeiten2 = bearbeiten2.Mid(pk_position2+1, strlen(bearbeiten2));	
		pk_position2 = bearbeiten2.Find('\n', 0);

		}	

		//AfxMessageBox(pos_memory[i2].Vorname);
		//AfxMessageBox(pos_memory[i2].Name);
		//AfxMessageBox(pos_memory[i2].PK);
		i2++;
	}
</code></pre>
<p>Jetzt nur noch rausbekommen, wie das sortieren funktioniert.<br />
Also, CU fletscher!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/479469</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/479469</guid><dc:creator><![CDATA[Bummsfallera]]></dc:creator><pubDate>Sat, 13 Mar 2004 09:01:18 GMT</pubDate></item><item><title><![CDATA[Reply to CStrings alphabetisch sortieren on Sat, 13 Mar 2004 11:01:46 GMT]]></title><description><![CDATA[<p>int compare(const void *param1, const void *param2)<br />
{<br />
personaldaten *pers1 = (personaldaten *)param1, *pers2 = (personaldaten *)param2;</p>
<p>return pers1-&gt;Name.Compare(pers2-&gt;Name);<br />
}</p>
<p>qsort(pos_memory, 100, sizeof(personaldaten), compare);</p>
<p>müsste gehen</p>
]]></description><link>https://www.c-plusplus.net/forum/post/479523</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/479523</guid><dc:creator><![CDATA[0rp]]></dc:creator><pubDate>Sat, 13 Mar 2004 11:01:46 GMT</pubDate></item><item><title><![CDATA[Reply to CStrings alphabetisch sortieren on Sat, 13 Mar 2004 21:58:58 GMT]]></title><description><![CDATA[<p>Geili!!!!!!!!<br />
Vielen, vielen, vielen, vielen Dank!</p>
<p>Naja, hat heute abend noch nicht sofort gefunzt.<br />
Da ich morgen Frühschicht hab muss es leider bis Montag warten.<br />
Sieht aber für mich Anfänger recht kompliziert aus (auch das Original<br />
in der MSDN).<br />
<img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f644.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--face_with_rolling_eyes"
      title=":rolling_eyes:"
      alt="🙄"
    /> <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f62e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--face_with_open_mouth"
      title=":open_mouth:"
      alt="😮"
    /> <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f615.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--confused_face"
      title=":confused:"
      alt="😕"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/479813</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/479813</guid><dc:creator><![CDATA[Bummsfallera]]></dc:creator><pubDate>Sat, 13 Mar 2004 21:58:58 GMT</pubDate></item></channel></rss>