<?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[Daten auslesen - Es funktioniert, aber irgendwie versteh ich es nicht...]]></title><description><![CDATA[<p>so mal eben der code:</p>
<pre><code>#include &lt;iostream&gt;
#include &lt;string&gt;
#include &lt;fstream&gt;
using namespace std;

int main(){

    int we;

    string name;
    string geschlecht;
    string alter;
    string groesse;
    string gewicht;
    string datensatz;
    string s_name;

    cout &lt;&lt; &quot;Daten auslesen&quot; &lt;&lt; endl;
    cout &lt;&lt; &quot;gesuchter name: &quot; &lt;&lt; endl;
    cin &gt;&gt; s_name;
    //ofstream file(&quot;save_test.txt&quot;, ios::in);

    ifstream r_file;  // Datei-Handle
    string s;
    r_file.open(&quot;save_test.txt&quot;, ios::in); // Öffne Datei aus Parameter
    while (!r_file.eof())          // Solange noch Daten vorliegen
    {

        getline(r_file, s);        // Lese eine Zeile
        string suche(s_name);
        if(!s.find(suche)){
        cout &lt;&lt; s &lt;&lt; endl;    // Zeige sie auf dem Bildschirm
        }
    }
    r_file.close();

    cin &gt;&gt; we;

return 0;
}
</code></pre>
<p>es funzt, nur irgendwie erscheint mir das hier unlogisch...</p>
<pre><code>getline(r_file, s);        // Lese eine Zeile
        string suche(s_name);
        if(!s.find(suche)){
        cout &lt;&lt; s &lt;&lt; endl;    // Zeige sie auf dem Bildschirm
        }
</code></pre>
<p>genauer: if(**!**s.find(suche)){<br />
nen denkfehler von mir?<br />
denn ich sage ja wenn nicht das gesuchte gefunden wird - anzeigen.<br />
allerdings genau in dieser konstellation wird der richtige datensatz angezeigt.<br />
Lass ich die Negation weg, werden alle bis auf der gesuchte Datensatz angezeigt.</p>
<p>Kann mir das mal jemand bitte erklären?</p>
<p>Danke!</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/218732/daten-auslesen-es-funktioniert-aber-irgendwie-versteh-ich-es-nicht</link><generator>RSS for Node</generator><lastBuildDate>Thu, 08 Oct 2026 23:44:50 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/218732.rss" rel="self" type="application/rss+xml"/><pubDate>Thu, 24 Jul 2008 12:51:53 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Daten auslesen - Es funktioniert, aber irgendwie versteh ich es nicht... on Thu, 24 Jul 2008 12:52:35 GMT]]></title><description><![CDATA[<p>so mal eben der code:</p>
<pre><code>#include &lt;iostream&gt;
#include &lt;string&gt;
#include &lt;fstream&gt;
using namespace std;

int main(){

    int we;

    string name;
    string geschlecht;
    string alter;
    string groesse;
    string gewicht;
    string datensatz;
    string s_name;

    cout &lt;&lt; &quot;Daten auslesen&quot; &lt;&lt; endl;
    cout &lt;&lt; &quot;gesuchter name: &quot; &lt;&lt; endl;
    cin &gt;&gt; s_name;
    //ofstream file(&quot;save_test.txt&quot;, ios::in);

    ifstream r_file;  // Datei-Handle
    string s;
    r_file.open(&quot;save_test.txt&quot;, ios::in); // Öffne Datei aus Parameter
    while (!r_file.eof())          // Solange noch Daten vorliegen
    {

        getline(r_file, s);        // Lese eine Zeile
        string suche(s_name);
        if(!s.find(suche)){
        cout &lt;&lt; s &lt;&lt; endl;    // Zeige sie auf dem Bildschirm
        }
    }
    r_file.close();

    cin &gt;&gt; we;

return 0;
}
</code></pre>
<p>es funzt, nur irgendwie erscheint mir das hier unlogisch...</p>
<pre><code>getline(r_file, s);        // Lese eine Zeile
        string suche(s_name);
        if(!s.find(suche)){
        cout &lt;&lt; s &lt;&lt; endl;    // Zeige sie auf dem Bildschirm
        }
</code></pre>
<p>genauer: if(**!**s.find(suche)){<br />
nen denkfehler von mir?<br />
denn ich sage ja wenn nicht das gesuchte gefunden wird - anzeigen.<br />
allerdings genau in dieser konstellation wird der richtige datensatz angezeigt.<br />
Lass ich die Negation weg, werden alle bis auf der gesuchte Datensatz angezeigt.</p>
<p>Kann mir das mal jemand bitte erklären?</p>
<p>Danke!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1553015</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1553015</guid><dc:creator><![CDATA[ReenBeam]]></dc:creator><pubDate>Thu, 24 Jul 2008 12:52:35 GMT</pubDate></item><item><title><![CDATA[Reply to Daten auslesen - Es funktioniert, aber irgendwie versteh ich es nicht... on Thu, 24 Jul 2008 13:25:24 GMT]]></title><description><![CDATA[<p>Die Abfrage auf ! schliesst 0 mit ein. Wenn 0 aber der Rückgabewert ist, dann trifft das auch zu.</p>
<blockquote>
<p>returns the first occurrence of str within the current string, starting at index, string::npos if nothing is found,</p>
</blockquote>
<p><a href="http://cppreference.com/cppstring/find.html" rel="nofollow">http://cppreference.com/cppstring/find.html</a><br />
Überprüfe die Rückgabe bitte auf string::npos<br />
lg</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1553030</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1553030</guid><dc:creator><![CDATA[Script0r]]></dc:creator><pubDate>Thu, 24 Jul 2008 13:25:24 GMT</pubDate></item></channel></rss>