<?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[Bedingter Ausdruck]]></title><description><![CDATA[<p>Warum geht dass nicht?</p>
<pre><code class="language-cpp">switch(string temp = (i &lt; (words.size()-1) ? ([i] + words[i+1]) : 0))
</code></pre>
<p>MfG<br />
Stromberg</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/235920/bedingter-ausdruck</link><generator>RSS for Node</generator><lastBuildDate>Thu, 24 Sep 2026 02:59:47 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/235920.rss" rel="self" type="application/rss+xml"/><pubDate>Sun, 08 Mar 2009 14:49:16 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Bedingter Ausdruck on Sun, 08 Mar 2009 14:49:16 GMT]]></title><description><![CDATA[<p>Warum geht dass nicht?</p>
<pre><code class="language-cpp">switch(string temp = (i &lt; (words.size()-1) ? ([i] + words[i+1]) : 0))
</code></pre>
<p>MfG<br />
Stromberg</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1676147</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1676147</guid><dc:creator><![CDATA[Stromberg]]></dc:creator><pubDate>Sun, 08 Mar 2009 14:49:16 GMT</pubDate></item><item><title><![CDATA[Reply to Bedingter Ausdruck on Sun, 08 Mar 2009 14:54:05 GMT]]></title><description><![CDATA[<p>Was geht nicht? Was versuchst du zu erreichen? <code>switch</code> kann nur im Zusammenhang mit integralen Typen verwendet werden.</p>
<p>Und was soll das <code>[i]</code> mitten im Ausdruck?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1676151</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1676151</guid><dc:creator><![CDATA[Nexus]]></dc:creator><pubDate>Sun, 08 Mar 2009 14:54:05 GMT</pubDate></item><item><title><![CDATA[Reply to Bedingter Ausdruck on Sun, 08 Mar 2009 14:53:35 GMT]]></title><description><![CDATA[<ol>
<li>switch klappt nur mit Ganzzahlen, du deklarierst da einen String.</li>
<li>i scheint ein int-ähnliche Variable/Konstante zu sein, was soll &quot;[i]&quot; sein?</li>
<li>Einen String kannst du nicht mit <code>(0)</code> initialisieren.</li>
</ol>
]]></description><link>https://www.c-plusplus.net/forum/post/1676153</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1676153</guid><dc:creator><![CDATA[Badestrand]]></dc:creator><pubDate>Sun, 08 Mar 2009 14:53:35 GMT</pubDate></item><item><title><![CDATA[Reply to Bedingter Ausdruck on Sun, 08 Mar 2009 14:53:50 GMT]]></title><description><![CDATA[<p>1. &quot;Geht nicht&quot; ist keine Fehlerbeschreibung.<br />
2. Du kannst kein <code>std::string</code> einem Switch übergeben. Switch kann nur mit integralen Datentypen umgehen.</p>
<p>Grüssli</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1676154</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1676154</guid><dc:creator><![CDATA[Dravere]]></dc:creator><pubDate>Sun, 08 Mar 2009 14:53:50 GMT</pubDate></item><item><title><![CDATA[Reply to Bedingter Ausdruck on Sun, 08 Mar 2009 15:27:52 GMT]]></title><description><![CDATA[<p>Mh, jetzt hab ichs mal ohne switch probiert, und klappt au schön, aber in &quot;temp&quot; steht nur Kauderwelche obwohl eigentlich 2 Buchstaben oder &quot; &quot; drinstehen sollte.</p>
<pre><code class="language-cpp">if((temp = (i &lt; (words.size()-1)) ? words[i] + words[i+1] : ' ')
</code></pre>
<p>z.B. sowas: &quot;╦¤Ê╬╩═¤╬╠&quot;</p>
<p>MfG<br />
Stromberg</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1676181</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1676181</guid><dc:creator><![CDATA[Stromberg*]]></dc:creator><pubDate>Sun, 08 Mar 2009 15:27:52 GMT</pubDate></item><item><title><![CDATA[Reply to Bedingter Ausdruck on Sun, 08 Mar 2009 15:29:35 GMT]]></title><description><![CDATA[<p>Kannst du dich mal verständlich ausdrücken? Was willst du genau erreichen?</p>
<p>Was soll <code>temp</code> sein, wie gibst du es aus?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1676182</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1676182</guid><dc:creator><![CDATA[Nexus]]></dc:creator><pubDate>Sun, 08 Mar 2009 15:29:35 GMT</pubDate></item><item><title><![CDATA[Reply to Bedingter Ausdruck on Sun, 08 Mar 2009 15:32:40 GMT]]></title><description><![CDATA[<p>Ich nehme mal an, dass temp der <code>std::string</code> ist und words auch ein <code>std::string</code> ist, denn ein <code>std::vector&lt;std::string&gt;</code> oder ähnliches kann es nicht sein, da der Rückgabewert von Bedingtenanweisungen einheitlich sein muss. Dann ist aber wohl klar, dass dies nicht das gewünschte Ergebnis liefern wird:<br />
<code>words[i] + words[i+1]</code><br />
Das ist eine Addition von char Werten. Das fügt die Dinger nicht zusammen.<br />
Vielleicht solltest du dieses seltsame und hässliche Konstrukt auseinander nehmen und daraus eine normale <code>if-else</code> Anweisung machen.</p>
<p>Grüssli</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1676185</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1676185</guid><dc:creator><![CDATA[Dravere]]></dc:creator><pubDate>Sun, 08 Mar 2009 15:32:40 GMT</pubDate></item><item><title><![CDATA[Reply to Bedingter Ausdruck on Sun, 08 Mar 2009 15:53:46 GMT]]></title><description><![CDATA[<p>Mh gibts keine Möglichkeit daraus einen String zu machen? Ich hab mal dass heir ausprobiert, funzt aber irgendwie nicht so ganz: strcat(words[i],words[i+1])</p>
<p>MfG<br />
Stromberg</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1676199</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1676199</guid><dc:creator><![CDATA[Stromberg*]]></dc:creator><pubDate>Sun, 08 Mar 2009 15:53:46 GMT</pubDate></item><item><title><![CDATA[Reply to Bedingter Ausdruck on Sun, 08 Mar 2009 15:57:40 GMT]]></title><description><![CDATA[<p>Ich halte dieses Elend nicht mehr aus:</p>
<pre><code class="language-cpp">std::string temp;

if(i &lt; (words.size() - 1))
{
  // Sofern words ein std::string ist.
  temp.append(words, i, 2);
}
else
{
  temp = ' ';
}
</code></pre>
<p>Ist auch gleich viel leserlicher.</p>
<p>Grüssli</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1676201</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1676201</guid><dc:creator><![CDATA[Dravere]]></dc:creator><pubDate>Sun, 08 Mar 2009 15:57:40 GMT</pubDate></item><item><title><![CDATA[Reply to Bedingter Ausdruck on Sun, 08 Mar 2009 16:16:31 GMT]]></title><description><![CDATA[<p>Stromberg* schrieb:</p>
<blockquote>
<p>Mh gibts keine Möglichkeit daraus einen String zu machen? Ich hab mal dass heir ausprobiert, funzt aber irgendwie nicht so ganz: strcat(words[i],words[i+1])</p>
<p>MfG<br />
Stromberg</p>
</blockquote>
<p>sollten word[i] und word[i+1] vom typ char sein gibt es einen konstruktor der string-klasse der daraus einen string macht</p>
<pre><code class="language-cpp">std::string(1,word[i]) + std::string(1,words[i+1])
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1676215</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1676215</guid><dc:creator><![CDATA[Bachhügel+]]></dc:creator><pubDate>Sun, 08 Mar 2009 16:16:31 GMT</pubDate></item><item><title><![CDATA[Reply to Bedingter Ausdruck on Sun, 08 Mar 2009 16:22:24 GMT]]></title><description><![CDATA[<p>Oder auch <code>words.substr(i,2)</code> <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/1676219</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1676219</guid><dc:creator><![CDATA[Badestrand]]></dc:creator><pubDate>Sun, 08 Mar 2009 16:22:24 GMT</pubDate></item><item><title><![CDATA[Reply to Bedingter Ausdruck on Mon, 09 Mar 2009 21:04:03 GMT]]></title><description><![CDATA[<p>So, endlich ist es perfekt:</p>
<pre><code class="language-cpp">if((temp = (i &lt; (words.size()-1)) ? string(1,words[i])+string(1,words[i+1]) : &quot; &quot;) == &quot;ff&quot;)
{
       ++SPECIAL_letters[0];
}
else if(temp == &quot;fl&quot;)
{
       ++SPECIAL_letters[1];
}
else if(temp == &quot;fi&quot;)
{
       ++SPECIAL_letters[2];
}
</code></pre>
<p>Ich Zähle in einem Text die aufeinanderfolgenden Buchstaben Paare &quot;ff&quot; &quot;fi&quot; und &quot;fl&quot; (C++ Primer Übung 6.9).<br />
Findet ihr den Code mit &quot;?&quot;-Operator wirklich so umständlich?</p>
<p>MfG<br />
Stromberg</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1676993</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1676993</guid><dc:creator><![CDATA[Stromberg*]]></dc:creator><pubDate>Mon, 09 Mar 2009 21:04:03 GMT</pubDate></item><item><title><![CDATA[Reply to Bedingter Ausdruck on Mon, 09 Mar 2009 21:10:15 GMT]]></title><description><![CDATA[<p>Stromberg* schrieb:</p>
<blockquote>
<p>Findet ihr den Code mit &quot;?&quot;-Operator wirklich so umständlich?</p>
</blockquote>
<p>Wieso schreibst du nicht einfach lesbaren Code?</p>
<p>Code Obfuscation ist nicht wirklich ein Zeichen guter Programmierung. <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="🙄"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1676996</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1676996</guid><dc:creator><![CDATA[Nexus]]></dc:creator><pubDate>Mon, 09 Mar 2009 21:10:15 GMT</pubDate></item><item><title><![CDATA[Reply to Bedingter Ausdruck on Mon, 09 Mar 2009 21:50:27 GMT]]></title><description><![CDATA[<p>Stromberg* schrieb:</p>
<blockquote>
<p>Findet ihr den Code mit &quot;?&quot;-Operator wirklich so umständlich?</p>
</blockquote>
<p>Das nicht, aber in Kombination mit der Zuweisung im Ausdruck finde ich's schwierig lesbar. Folgendes würde mir wesentlich besser gefallen:</p>
<pre><code class="language-cpp">std::string temp =  i&lt;(words.size()-1)?  words.substr(i,2)  :  &quot; &quot;;
if( temp == &quot;ff&quot;)
    ...
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1677007</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1677007</guid><dc:creator><![CDATA[Badestrand]]></dc:creator><pubDate>Mon, 09 Mar 2009 21:50:27 GMT</pubDate></item><item><title><![CDATA[Reply to Bedingter Ausdruck on Mon, 09 Mar 2009 22:38:08 GMT]]></title><description><![CDATA[<p>Stromberg schrieb:</p>
<blockquote>
<p>Ich Zähle in einem Text die aufeinanderfolgenden Buchstaben Paare &quot;ff&quot; &quot;fi&quot; und &quot;fl&quot; (C++ Primer Übung 6.9).</p>
</blockquote>
<p>Badestrand schrieb:</p>
<blockquote>
<p>Stromberg* schrieb:</p>
<blockquote>
<p>Findet ihr den Code mit &quot;?&quot;-Operator wirklich so umständlich?</p>
</blockquote>
<p>Das nicht, aber in Kombination mit der Zuweisung im Ausdruck finde ich's schwierig lesbar. Folgendes würde mir wesentlich besser gefallen:</p>
<pre><code class="language-cpp">std::string temp =  i&lt;(words.size()-1)?  words.substr(i,2)  :  &quot; &quot;;
if( temp == &quot;ff&quot;)
    ...
</code></pre>
</blockquote>
<p>Ich finds immernoch hässlich - und vermutlich ist es auch sinnlos...</p>
<pre><code class="language-cpp">if (words.empty ())
   return;

for (std::string::const_iterator i(words.begin()), e(words.end()-1); i != e; ++i)
{
  if (*i != 'f')
    continue;
  switch (*(i+1))
  {
    case 'f':
      ++SPECIAL_letters[0];
      break;
    case 'l':
      ++SPECIAL_letters[1];
      break;
    case 'i'
      ++SPECIAL_letters[2];
      break;
  }
}
</code></pre>
<p>oder allgemeiner:</p>
<pre><code class="language-cpp">if ( words.size() &lt; tosearch.size() )
   return;

for (std::string::const_iterator i(words.begin()), e(words.end()-tosearch.size()); i != e; ++i)
{
  std::string tmp (i, e);
  if (tmp == tosearch)
     ++SPECIAL_letters[0];
}
</code></pre>
<p>Geht bestimmt auch noch hübscher - aber kA...</p>
<p>bb</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1677028</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1677028</guid><dc:creator><![CDATA[unskilled]]></dc:creator><pubDate>Mon, 09 Mar 2009 22:38:08 GMT</pubDate></item></channel></rss>