<?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[2 Strings aus Funktion zurückgeben]]></title><description><![CDATA[<p>Hallo zusammen</p>
<p>Ich habe ein Problem, wo ich nicht weiterkomme:</p>
<p>Ich habe die Funktion string TimeStammp()</p>
<p>Bis jetzt gab es mir immer die ganze Zeit im Format &quot;JJJJ_MM_DD_HHh_MMm_SSs&quot; zurück</p>
<p>Ich brauche es nun aber so, das Datum und Zeit getrennt zurückgegeben wird. Also:</p>
<p>String1 = JJJJ_MM_DD<br />
String2 = HH:MM:SS</p>
<p>Ist das überhaupt möglich in nur einer Funktion?</p>
<pre><code class="language-cpp">string CFlukeReader::timeStamp(void)
{
        //Irgendwelche Zeitberechnungen

	zeit = jahr + &quot;_&quot; + monat + &quot;_&quot; + tag + &quot;_&quot; + stunde + &quot;h_&quot; + minute + &quot;m_&quot; + sekunde + &quot;s&quot;;

	string timeStamp( zeit ); 

	return timeStamp;
}
</code></pre>
<p>Bin froh über beispiele</p>
<p>Danke</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/275734/2-strings-aus-funktion-zurückgeben</link><generator>RSS for Node</generator><lastBuildDate>Wed, 26 Aug 2026 16:16:47 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/275734.rss" rel="self" type="application/rss+xml"/><pubDate>Wed, 20 Oct 2010 07:18:33 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to 2 Strings aus Funktion zurückgeben on Wed, 20 Oct 2010 07:18:33 GMT]]></title><description><![CDATA[<p>Hallo zusammen</p>
<p>Ich habe ein Problem, wo ich nicht weiterkomme:</p>
<p>Ich habe die Funktion string TimeStammp()</p>
<p>Bis jetzt gab es mir immer die ganze Zeit im Format &quot;JJJJ_MM_DD_HHh_MMm_SSs&quot; zurück</p>
<p>Ich brauche es nun aber so, das Datum und Zeit getrennt zurückgegeben wird. Also:</p>
<p>String1 = JJJJ_MM_DD<br />
String2 = HH:MM:SS</p>
<p>Ist das überhaupt möglich in nur einer Funktion?</p>
<pre><code class="language-cpp">string CFlukeReader::timeStamp(void)
{
        //Irgendwelche Zeitberechnungen

	zeit = jahr + &quot;_&quot; + monat + &quot;_&quot; + tag + &quot;_&quot; + stunde + &quot;h_&quot; + minute + &quot;m_&quot; + sekunde + &quot;s&quot;;

	string timeStamp( zeit ); 

	return timeStamp;
}
</code></pre>
<p>Bin froh über beispiele</p>
<p>Danke</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1967846</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1967846</guid><dc:creator><![CDATA[TTs]]></dc:creator><pubDate>Wed, 20 Oct 2010 07:18:33 GMT</pubDate></item><item><title><![CDATA[Reply to 2 Strings aus Funktion zurückgeben on Wed, 20 Oct 2010 07:30:49 GMT]]></title><description><![CDATA[<p>Nein, man kann nur einen Wert zurückgeben. Aber ich find das was du vorhast nicht sehr handlich.<br />
Der normale Lösungsweg wäre eine KLasse DateTime, die zur Speicherung von Datum und Uhrzeit aber keine Strings sondern integer her nimmt (dann kann man auch was mit der Klasse anfangen!), diese bekommt dann ein Funktionen zur formatierten Ausgabe, z.B. formatTime(), die dein gewünschtes Ergebnis als string zurückgeben.<br />
Schau dir aber auch mal boost.datetime an, wenn du am Ende mehr als nur Ausgaben machen willst.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1967854</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1967854</guid><dc:creator><![CDATA[l&#x27;abra d&#x27;or]]></dc:creator><pubDate>Wed, 20 Oct 2010 07:30:49 GMT</pubDate></item><item><title><![CDATA[Reply to 2 Strings aus Funktion zurückgeben on Wed, 20 Oct 2010 07:36:20 GMT]]></title><description><![CDATA[<p>Also, ich muss schlussendlich das Datum uund die Zeit nur ausgeben. Die Funktion werde ich nicht ersetzen, da ich sie schon überall in meinem Programm verwendet habe. Und ich noch nicht sehr fortgeschritten in c++ bin.</p>
<p>Dann muss ich wohl noch eine zweite Funktion erstellen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1967858</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1967858</guid><dc:creator><![CDATA[TTs]]></dc:creator><pubDate>Wed, 20 Oct 2010 07:36:20 GMT</pubDate></item><item><title><![CDATA[Reply to 2 Strings aus Funktion zurückgeben on Wed, 20 Oct 2010 07:39:37 GMT]]></title><description><![CDATA[<p>Der beste Lösungsweg wäre doch eher eine Klasse Date _und_ eine andere Klasse Time. Eine dritte Klasse könnte dann ein Objekt von Date und Time beinhalten.<br />
Vorteil: Oft braucht man nur ein Datum, manchmal nur eine Zeit. Wenn man beides braucht, dann bedient man sich der dritten Klasse.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1967859</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1967859</guid><dc:creator><![CDATA[Vicious Falcon]]></dc:creator><pubDate>Wed, 20 Oct 2010 07:39:37 GMT</pubDate></item><item><title><![CDATA[Reply to 2 Strings aus Funktion zurückgeben on Wed, 20 Oct 2010 07:44:50 GMT]]></title><description><![CDATA[<p>Ja warum einfach machen wenns auch kompliziert geht.<br />
Antwort auf die eigentliche Frage: in C++ kann man immer nur ein Objekt zurückgeben. Allerdings gibt es std::pair. Damit kann man z.B. ein std::pair&lt;std::string, std::string&gt; zurückgeben.</p>
<pre><code class="language-cpp">std::pair&lt;std::string, std::string&gt; Foo()
{
    std::string s1 = ...;
    std::string s2 = ...;
    return std::make_pair(s1, s2);
}

void Bar()
{
    std::pair&lt;std::string, std::string&gt; result = Foo();
    std::string s1 = result.first;
    std::string s2 = result.second;
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1967861</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1967861</guid><dc:creator><![CDATA[hustbaer]]></dc:creator><pubDate>Wed, 20 Oct 2010 07:44:50 GMT</pubDate></item><item><title><![CDATA[Reply to 2 Strings aus Funktion zurückgeben on Wed, 20 Oct 2010 07:49:18 GMT]]></title><description><![CDATA[<p>Vicious Falcon schrieb:</p>
<blockquote>
<p>Der beste Lösungsweg wäre doch eher eine Klasse Date _und_ eine andere Klasse Time. Eine dritte Klasse könnte dann ein Objekt von Date und Time beinhalten.<br />
Vorteil: Oft braucht man nur ein Datum, manchmal nur eine Zeit. Wenn man beides braucht, dann bedient man sich der dritten Klasse.</p>
</blockquote>
<p>Das tönt ziemlich logisch</p>
<p>Aber wenn ich es so brauch wie unten:</p>
<p>Ich will ein Datum, und eine Zeit in ein CSV schreiben:</p>
<p>outputFile &lt;&lt; Date &lt;&lt; &quot;;&quot; &lt;&lt; Time;</p>
<p>Sollte ich dann nicht eine Klasse DateTime erstellen, mit einer Funktion für das Datum und einer Funktion für die Zeit und eine Funktion für beides?</p>
<p>Dann würde ich einfach nur DateTime::Date und DateTime::Time verwenden.</p>
<p>Könnte das so klappen?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1967864</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1967864</guid><dc:creator><![CDATA[TTs]]></dc:creator><pubDate>Wed, 20 Oct 2010 07:49:18 GMT</pubDate></item><item><title><![CDATA[Reply to 2 Strings aus Funktion zurückgeben on Wed, 20 Oct 2010 08:00:25 GMT]]></title><description><![CDATA[<pre><code class="language-cpp">void timestamp ( std::string&amp; date, std::string&amp; time )
{
  // ...
  date = &quot;...&quot;;
  time = &quot;...&quot;;
}

// ...
int main ( int argc, char** argv )
{
  std::string date, time;
  timestamp( date, time );
  std::cout &lt;&lt; &quot;date: &quot; &lt;&lt; date &lt;&lt; &quot;, time: &quot; &lt;&lt; time &lt;&lt; std::endl;
  return 0;
}
</code></pre>
<p>Aber die Lösung mit Klasse(n) ist natürlich zu bevorzugen da es später viel einfacher ist diese zu erweitern und auch zu warten.</p>
<p>Gut Schuß<br />
VuuRWerK <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>
]]></description><link>https://www.c-plusplus.net/forum/post/1967866</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1967866</guid><dc:creator><![CDATA[VuuRWerK]]></dc:creator><pubDate>Wed, 20 Oct 2010 08:00:25 GMT</pubDate></item><item><title><![CDATA[Reply to 2 Strings aus Funktion zurückgeben on Wed, 20 Oct 2010 08:06:58 GMT]]></title><description><![CDATA[<p>Wenn du die Funktionsaufrufe nicht ändern willst, dann schreibe einfach die Funktion um. Die beiden Teilstrings fügst du mit strcat in einen Rückgabestring mit einem Trennzeichen um, z.b. &quot;string1@string2&quot;. Nach den Aufrufen dröselst du die beiden Strings wieder auf - fertig! Ist nicht sehr elegant, aber machbar.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1967868</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1967868</guid><dc:creator><![CDATA[berniebutt]]></dc:creator><pubDate>Wed, 20 Oct 2010 08:06:58 GMT</pubDate></item><item><title><![CDATA[Reply to 2 Strings aus Funktion zurückgeben on Wed, 20 Oct 2010 08:14:59 GMT]]></title><description><![CDATA[<p>Du kannst den operator&lt;&lt; für Time und Date definieren. DateTime ruft im operator&lt;&lt; die entsprechenden Operatoren der Klassen auf.<br />
Selbstverständlich könnten für die Ausgabe noch verschiedene Formate auswählbar sein.<br />
Date:<br />
20.10.2010 oder<br />
10/20/2010 oder<br />
20. Okt. 2010<br />
Time:<br />
15:09:53 oder<br />
03:09:53 pm<br />
Auch zusätzliche Methoden wie<br />
Time GetAsGMT();<br />
könnten hilfreich sein.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1967875</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1967875</guid><dc:creator><![CDATA[Vicious Falcon]]></dc:creator><pubDate>Wed, 20 Oct 2010 08:14:59 GMT</pubDate></item><item><title><![CDATA[Reply to 2 Strings aus Funktion zurückgeben on Thu, 21 Oct 2010 01:34:20 GMT]]></title><description><![CDATA[<p>IMO ist die beste Lösung 100%ig davon abhängig, was Du mit dem Zeug weiter anfangen möchtest.</p>
<p>Wenn Du eben nur eine kleine Hausaufgabe machen musst und es daher egal ist, wie erweiterbar oder änderbar dein Code ist, ist std::pair doch genau das Richtige. Das ist schnell und allokiert wenig unnötigen Speicher, wenn der Compiler halbwegs vernünftig arbeitet.</p>
<p>Neue Klassen zu bauen, wenn man die gar nicht benötigt, finde ich nicht gut. Für gut zugeschnittene Lösungen müsstest Du mehr Informationen über die weitere Verwendung liefern.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1968294</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1968294</guid><dc:creator><![CDATA[Eisflamme]]></dc:creator><pubDate>Thu, 21 Oct 2010 01:34:20 GMT</pubDate></item></channel></rss>