<?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[C++ Variable in einer if-Bedingung]]></title><description><![CDATA[<p>Ich brauch erneut Eure Hilfe. Da es sich um ein etwas anderes Thema handelt, habe ich mich entschlossen einen anderen Thread zu machen. Wie auch immer, hier ist ein Abschnitt meines Programms um das Problem besser zu erklären.</p>
<pre><code>int ID;
cin &gt;&gt; ID;
if (s=&quot;&lt;SchuelerId&gt;&quot;ID&quot;&lt;/SchuelerId&gt;&quot;)
cout &lt;&lt; &quot;Hallo Welt;
</code></pre>
<p>In der Datei gibt es viele Schüler-Identifikationsnummern<br />
z.B<br />
&lt;SchuelerId&gt;20038&lt;/SchuelerId&gt;<br />
Der User soll die Schüler-ID-Nummer eingeben und das Programm gibt ihm die Informationen zum jeweiligen Schüler aus. Wie kriege ich es hin?<br />
Es handelt sich also nicht um eine reine Zahl, sondern besteht aus Zahlen und Wörtern. Ich möchte auch nicht, dass der User diese Wörter eingeben muss.</p>
<p>Gruß</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/310589/c-variable-in-einer-if-bedingung</link><generator>RSS for Node</generator><lastBuildDate>Tue, 04 Aug 2026 09:39:55 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/310589.rss" rel="self" type="application/rss+xml"/><pubDate>Thu, 15 Nov 2012 20:35:54 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to C++ Variable in einer if-Bedingung on Thu, 15 Nov 2012 20:36:48 GMT]]></title><description><![CDATA[<p>Ich brauch erneut Eure Hilfe. Da es sich um ein etwas anderes Thema handelt, habe ich mich entschlossen einen anderen Thread zu machen. Wie auch immer, hier ist ein Abschnitt meines Programms um das Problem besser zu erklären.</p>
<pre><code>int ID;
cin &gt;&gt; ID;
if (s=&quot;&lt;SchuelerId&gt;&quot;ID&quot;&lt;/SchuelerId&gt;&quot;)
cout &lt;&lt; &quot;Hallo Welt;
</code></pre>
<p>In der Datei gibt es viele Schüler-Identifikationsnummern<br />
z.B<br />
&lt;SchuelerId&gt;20038&lt;/SchuelerId&gt;<br />
Der User soll die Schüler-ID-Nummer eingeben und das Programm gibt ihm die Informationen zum jeweiligen Schüler aus. Wie kriege ich es hin?<br />
Es handelt sich also nicht um eine reine Zahl, sondern besteht aus Zahlen und Wörtern. Ich möchte auch nicht, dass der User diese Wörter eingeben muss.</p>
<p>Gruß</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2271245</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2271245</guid><dc:creator><![CDATA[sen83]]></dc:creator><pubDate>Thu, 15 Nov 2012 20:36:48 GMT</pubDate></item><item><title><![CDATA[Reply to C++ Variable in einer if-Bedingung on Fri, 16 Nov 2012 04:31:00 GMT]]></title><description><![CDATA[<p>1. Was hat das mit MFC zu tun?<br />
2. Was willst du mit dieser if-Bedingung erreichen?<br />
3. Schon mal überlegt ein Buch über C++ durchzulesen?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2271310</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2271310</guid><dc:creator><![CDATA[EOP]]></dc:creator><pubDate>Fri, 16 Nov 2012 04:31:00 GMT</pubDate></item><item><title><![CDATA[Reply to C++ Variable in einer if-Bedingung on Fri, 16 Nov 2012 06:49:13 GMT]]></title><description><![CDATA[<p>Dieser Thread wurde von Moderator/in <a href="http://www.c-plusplus.net/forum/u100590" rel="nofollow">Martin Richter</a> aus dem Forum <a href="http://www.c-plusplus.net/forum/f1" rel="nofollow">MFC (Visual C++)</a> in das Forum <a href="http://www.c-plusplus.net/forum/f15" rel="nofollow">C++ (auch C++0x und C++11)</a> verschoben.</p>
<p>Im Zweifelsfall bitte auch folgende Hinweise beachten:<br />
<a href="http://www.c-plusplus.net/forum/39405" rel="nofollow">C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?</a></p>
<p><em>Dieses Posting wurde automatisch erzeugt.</em></p>
]]></description><link>https://www.c-plusplus.net/forum/post/2271325</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2271325</guid><dc:creator><![CDATA[C++ Forumbot]]></dc:creator><pubDate>Fri, 16 Nov 2012 06:49:13 GMT</pubDate></item><item><title><![CDATA[Reply to C++ Variable in einer if-Bedingung on Fri, 16 Nov 2012 10:28:24 GMT]]></title><description><![CDATA[<p>sen83 schrieb:</p>
<blockquote>
<p>Wie kriege ich es hin?</p>
</blockquote>
<p>Mit einem XML-Parser und C++-Buch. Da du aber für das Erstere noch nicht soweit bist, fang lieber mit einem Buch an. Wenn aber die Zeit drängt, du wenig/keine Lust hast, C++ anständig zu lernen, und dir ein Tunnelblick ausreicht, dann schau dir gleich I/O in C++ und std::string (Stichwort find()) an.<br />
Dir einen fertigen Programmcode zu posten, würde bei deinen C++-Kenntnissen keinen Sinn machen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2271393</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2271393</guid><dc:creator><![CDATA[*Rewind*]]></dc:creator><pubDate>Fri, 16 Nov 2012 10:28:24 GMT</pubDate></item><item><title><![CDATA[Reply to C++ Variable in einer if-Bedingung on Fri, 16 Nov 2012 10:44:37 GMT]]></title><description><![CDATA[<p>sen83 schrieb:</p>
<blockquote>
<pre><code>if (s=&quot;&lt;SchuelerId&gt;&quot;ID&quot;&lt;/SchuelerId&gt;&quot;)
</code></pre>
</blockquote>
<p>Bevor du noch öfter drauf 'reinfällst: der Vergleichsoperator in C++ ist &quot;==&quot;, nicht &quot;=&quot;. Du versuchst hier, die Adresse eines Stringliterals zuzuweisen. Und so ein Vergleich klappt dann auch nur, wenn du eine String-Klasse wie std::string verwendest. Mit char-Arrays geht das so nicht (da gäbe es z.B. strncmp). Wir sehen ja leider nicht, welchen Typ s hat. Und das Zusammenfriemeln von Strings und ints geht auch nicht einfach, indem man sie hintereinander schreibt...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2271400</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2271400</guid><dc:creator><![CDATA[_matze]]></dc:creator><pubDate>Fri, 16 Nov 2012 10:44:37 GMT</pubDate></item><item><title><![CDATA[Reply to C++ Variable in einer if-Bedingung on Sun, 18 Nov 2012 06:56:40 GMT]]></title><description><![CDATA[<p>Hallo sen83,</p>
<p>aus Deiner Fragestellung und dem <a href="http://www.c-plusplus.net/forum/310271" rel="nofollow">vorhergegangenen Thread</a> schließe ich, dass Du die XML-Datei nicht wirklich einlesen kannst. Mit 'wirklich einlesen' meine ich, dass ein Wert wie 20038 der zwischen zwei XML-tags steht, letztlich in eine Variable Deines Programms wandert (int oder string). Mit zeilenweisen Einlesen via getline kommst Du bei einer XML-Datei wirklich nicht weiter.</p>
<p>Da da auch kein Tool benutzen sollst (hier würde sich <a href="http://www.grinninglizard.com/tinyxml2/index.html" rel="nofollow">tinyxml</a> anbieten), würde ich Dir empfehlen mit einem 'Minimalparser' nach z.B.: &lt;SchuelerId&gt; zu suchen. Das ganze könnte so aussehen:</p>
<pre><code>#include &lt;iostream&gt;
#include &lt;string&gt;
#include &lt;vector&gt;
#include &lt;algorithm&gt;
#include &lt;fstream&gt;
#include &lt;limits&gt;

// --   Minimalparser für einen XML-tag '&lt;Text&gt;'
struct search_xml_tag
{
    search_xml_tag( const std::string&amp; tag )
        : tag_( tag )
    {}
    std::string tag_;
};
std::istream&amp; operator&gt;&gt;( std::istream&amp; in, search_xml_tag s )
{
    for( std::string tag; in.ignore( std::numeric_limits&lt; std::streamsize &gt;::max(), '&lt;' ).good()
        &amp;&amp; getline( in, tag, '&gt;' ) &amp;&amp; tag != s.tag_; )
        ;
    return in;
}

int main()
{
    using namespace std;
    vector&lt; int &gt; schuelerIds;
    {   // -- alle Schüler-Ids nach 'schuelerIds' lesen
        ifstream in(&quot;input.xml&quot;);
        if( !in.is_open() )
        {
            cerr &lt;&lt; &quot;Fehler beim Oeffnen der Datei&quot; &lt;&lt; endl;
            return -2;
        }
        for( int id; in &gt;&gt; search_xml_tag( &quot;SchuelerId&quot; ) &gt;&gt; id; )
            schuelerIds.push_back( id );
        cout &lt;&lt; schuelerIds.size() &lt;&lt; &quot; Eintraege gelesen&quot; &lt;&lt; endl;
    }

    for( int id; cout &lt;&lt; &quot;\nBitte SchuelerId eingeben (Ende mit 'q'): &quot;, cin &gt;&gt; id; )
    {
        cout &lt;&lt; &quot;Die SchuelerId &quot; &lt;&lt; id &lt;&lt; &quot; ist &quot;
            &lt;&lt; (any_of( begin(schuelerIds), end(schuelerIds), [id]( const int&amp; x ) { return x == id; } )? &quot;in der Datei enthalten&quot;: &quot;unbekannt&quot;)
            &lt;&lt; endl;
    }

    return 0;
}
</code></pre>
<p>Da dürfen dann z.B. keine Attribute in dem XML-Tag stehen, aber das ist die einfachste Variante, die ich mir in der Form vorstellen kann.</p>
<p>Gruß<br />
Werner</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2271810</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2271810</guid><dc:creator><![CDATA[Werner Salomon]]></dc:creator><pubDate>Sun, 18 Nov 2012 06:56:40 GMT</pubDate></item><item><title><![CDATA[Reply to C++ Variable in einer if-Bedingung on Sat, 17 Nov 2012 17:04:36 GMT]]></title><description><![CDATA[<p>Ganz kleine Bitte: könntest du den Code-Tag richtig stellen? Das in die ganze Zeit gehilighted wird, verwirrt ein wenig... wollte schon zum Forentechnik-Board marschieren <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>
]]></description><link>https://www.c-plusplus.net/forum/post/2271824</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2271824</guid><dc:creator><![CDATA[Sone]]></dc:creator><pubDate>Sat, 17 Nov 2012 17:04:36 GMT</pubDate></item></channel></rss>