<?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[Zeiger]]></title><description><![CDATA[<p>Hallo,</p>
<p>habe mal ne Frage zu den Zeigern:</p>
<pre><code class="language-cpp">#include &lt;iostream&gt;
using namespace std;

int main(){
  int a;
  int b;
  int* c;    // Geht auch einfacher,
  int* d;    // ich weiß, wollte nur
  c = &amp;a;    // nochmal Zeiger üben...^^
  d = &amp;b;
  cout&lt;&lt;&quot;Bitte geben Sie einen Wert für a ein: &quot;&lt;&lt;endl;
  cin&gt;&gt;a;
  if(!(cin&gt;&gt;a)){
    cerr&lt;&lt;&quot;Fehler bei der Eingabe!&quot;&lt;&lt;endl;
    exit(1);
  }

  cout&lt;&lt;&quot;Bitte geben Sie einen Wert für b ein: &quot;&lt;&lt;endl;
  cin&gt;&gt;b;
  if(!(cin&gt;&gt;b)){
    cerr&lt;&lt;&quot;Fehler bei der Eingabe!&quot;&lt;&lt;endl;
    exit(1);
  }

  cout&lt;&lt;endl;
  cout&lt;&lt;&quot;'a' hat den Wert '&quot;&lt;&lt;a&lt;&lt;&quot;' und die Adresse &quot;&lt;&lt;c&lt;&lt;&quot;.&quot;&lt;&lt;endl;
  cout&lt;&lt;&quot;'b' hat den Wert '&quot;&lt;&lt;b&lt;&lt;&quot;' und die Adresse &quot;&lt;&lt;d&lt;&lt;&quot;.&quot;&lt;&lt;endl;

  return 0;
}
</code></pre>
<p>Wenn ich das Prog. ausführe kommt das:</p>
<pre><code>Bitte geben Sie einen Wert für a ein:

1      // Erstwe Zahl eingegeben und [enter]!
       // trotzdem bekomm ich beim [enter]
       // immer wieder newline!

2      // Bis ich eine 2. Zahl eingebe.
Bitte geben Sie einen Wert für b ein: 

3      // Und nochmal die 1.
       // [enter] --&gt; newline!
3      // Bei der 2. Zahl klappts^^

'a' hat den Wert '2' und die Adresse 1245064.

// Also nimmt er nur die 2. Zahl!

'b' hat den Wert '3' und die Adresse 1245060.

// Und das ganze nur, wenn if drinne is!
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/topic/193915/zeiger</link><generator>RSS for Node</generator><lastBuildDate>Mon, 28 Sep 2026 07:28:19 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/193915.rss" rel="self" type="application/rss+xml"/><pubDate>Mon, 01 Oct 2007 16:43:49 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Zeiger on Mon, 01 Oct 2007 16:43:49 GMT]]></title><description><![CDATA[<p>Hallo,</p>
<p>habe mal ne Frage zu den Zeigern:</p>
<pre><code class="language-cpp">#include &lt;iostream&gt;
using namespace std;

int main(){
  int a;
  int b;
  int* c;    // Geht auch einfacher,
  int* d;    // ich weiß, wollte nur
  c = &amp;a;    // nochmal Zeiger üben...^^
  d = &amp;b;
  cout&lt;&lt;&quot;Bitte geben Sie einen Wert für a ein: &quot;&lt;&lt;endl;
  cin&gt;&gt;a;
  if(!(cin&gt;&gt;a)){
    cerr&lt;&lt;&quot;Fehler bei der Eingabe!&quot;&lt;&lt;endl;
    exit(1);
  }

  cout&lt;&lt;&quot;Bitte geben Sie einen Wert für b ein: &quot;&lt;&lt;endl;
  cin&gt;&gt;b;
  if(!(cin&gt;&gt;b)){
    cerr&lt;&lt;&quot;Fehler bei der Eingabe!&quot;&lt;&lt;endl;
    exit(1);
  }

  cout&lt;&lt;endl;
  cout&lt;&lt;&quot;'a' hat den Wert '&quot;&lt;&lt;a&lt;&lt;&quot;' und die Adresse &quot;&lt;&lt;c&lt;&lt;&quot;.&quot;&lt;&lt;endl;
  cout&lt;&lt;&quot;'b' hat den Wert '&quot;&lt;&lt;b&lt;&lt;&quot;' und die Adresse &quot;&lt;&lt;d&lt;&lt;&quot;.&quot;&lt;&lt;endl;

  return 0;
}
</code></pre>
<p>Wenn ich das Prog. ausführe kommt das:</p>
<pre><code>Bitte geben Sie einen Wert für a ein:

1      // Erstwe Zahl eingegeben und [enter]!
       // trotzdem bekomm ich beim [enter]
       // immer wieder newline!

2      // Bis ich eine 2. Zahl eingebe.
Bitte geben Sie einen Wert für b ein: 

3      // Und nochmal die 1.
       // [enter] --&gt; newline!
3      // Bei der 2. Zahl klappts^^

'a' hat den Wert '2' und die Adresse 1245064.

// Also nimmt er nur die 2. Zahl!

'b' hat den Wert '3' und die Adresse 1245060.

// Und das ganze nur, wenn if drinne is!
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1376119</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1376119</guid><dc:creator><![CDATA[daLord]]></dc:creator><pubDate>Mon, 01 Oct 2007 16:43:49 GMT</pubDate></item><item><title><![CDATA[Reply to Zeiger on Mon, 01 Oct 2007 17:17:38 GMT]]></title><description><![CDATA[<pre><code class="language-cpp">cin&gt;&gt;a;
  if(!(cin&gt;&gt;a)) ...
</code></pre>
<p>Du fragst hier mit dem ersten cin nach einer Zeichenkette, die man in ein int umwandeln kann. Mit dem if-statement startest du jedoch ebenfalls wieder eine Anfrage nach einer Zeichenkette.</p>
<p>Das hat mit Zeiger nichts zu tun. <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>Grüße...</p>
<p>Heiko</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1376127</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1376127</guid><dc:creator><![CDATA[bwbg]]></dc:creator><pubDate>Mon, 01 Oct 2007 17:17:38 GMT</pubDate></item><item><title><![CDATA[Reply to Zeiger on Mon, 01 Oct 2007 17:31:11 GMT]]></title><description><![CDATA[<p>Also, cin&gt;&gt;a nimmt den Wert von a, soweit klar...^^<br />
Aber Wie kann ich jetz prüfen, ob [ int a ] auch eine &quot;richtige&quot; Eingabe ist? Also nich z.B. &quot;lol112.445&quot;, womit dann das Prog. probleme bekommt...^^</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1376131</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1376131</guid><dc:creator><![CDATA[daLord]]></dc:creator><pubDate>Mon, 01 Oct 2007 17:31:11 GMT</pubDate></item><item><title><![CDATA[Reply to Zeiger on Mon, 01 Oct 2007 18:49:09 GMT]]></title><description><![CDATA[<p>Mit...</p>
<pre><code>bool all_okay = cin &gt;&gt; foo;
</code></pre>
<p>... will sagen:</p>
<pre><code class="language-cpp">if( !(cin &gt;&gt; foo) ) ...
</code></pre>
<p>Hiermit liest du ein und anhand des Rückgabewertes prüfst du direkt, ob alles in Ordnung ist. Übrigens sind auch Überläufe mögliche Fehlerquellen.</p>
<p>Grüße...</p>
<p>Heiko</p>
<p>EDIT:</p>
<pre><code>cin &gt;&gt; a;
</code></pre>
<p>nimmt natürlich nicht den Wert von a. (int) a wird auch niemals einen Wert in Form von &quot;lol123.456&quot; enthalten.</p>
<p>cin &gt;&gt; a; liest von dem Standardeingabestrom (in deinem Fall von der Tastatur) und versucht die gelesenen Zeichen so zu interpretieren, dass sie am besten auf den gewünschten Variablentyp (hier int) passen. cin liest so lange ein, bis es auf ein Zeichen trifft, welches nicht mehr passen wird - in deinem Fall alle Zeichen, die keine Ziffer darstellen.</p>
<p>Aus &quot;1234abcdfg1234&quot; liest cin nun &quot;1234&quot; aus dem Strom ('a' ist ja nun keine Ziffer) und wandelt diese in den Wert 1234 um. &quot;abcdfg1234&quot; verbleibt aber im Eingabestrom, darauf muss man achten.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1376154</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1376154</guid><dc:creator><![CDATA[bwbg]]></dc:creator><pubDate>Mon, 01 Oct 2007 18:49:09 GMT</pubDate></item><item><title><![CDATA[Reply to Zeiger on Mon, 01 Oct 2007 18:50:41 GMT]]></title><description><![CDATA[<p>Und wo kommt das</p>
<pre><code>bool all_okay = cin &gt;&gt; foo;
</code></pre>
<p>rein?<br />
Und was bedeutet das &quot;foo&quot;?^^</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1376162</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1376162</guid><dc:creator><![CDATA[daLord]]></dc:creator><pubDate>Mon, 01 Oct 2007 18:50:41 GMT</pubDate></item><item><title><![CDATA[Reply to Zeiger on Mon, 01 Oct 2007 18:58:43 GMT]]></title><description><![CDATA[<p><a href="http://de.wikipedia.org/wiki/Metasyntaktische_Variable" rel="nofollow">http://de.wikipedia.org/wiki/Metasyntaktische_Variable</a> <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>Diese werden dir noch häufig über den Weg laufen. Alles in allem solltest du dich aber vorweg mal in die &quot;Ein- und Ausgabe mit Streams&quot; einlesen. Das beantwortet viele deiner Probleme und Fragen.</p>
<p>Google ist dein Freund...</p>
<p>Grüße</p>
<p>Heiko</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1376167</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1376167</guid><dc:creator><![CDATA[bwbg]]></dc:creator><pubDate>Mon, 01 Oct 2007 18:58:43 GMT</pubDate></item><item><title><![CDATA[Reply to Zeiger on Mon, 01 Oct 2007 19:50:02 GMT]]></title><description><![CDATA[<p>daLord schrieb:</p>
<blockquote>
<p>Und wo kommt das</p>
<pre><code>bool all_okay = cin &gt;&gt; foo;
</code></pre>
<p>rein?<br />
Und was bedeutet das &quot;foo&quot;?^^</p>
</blockquote>
<p><em>foo</em> ist ne Variable, die eingelesen wird...</p>
<p>Außerdem kannst du mit</p>
<pre><code class="language-cpp">if(!cin) { /*Falsche Eingabe*/ }
</code></pre>
<p>was besseres machen <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f642.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--slightly_smiling_face"
      title=":)"
      alt="🙂"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1376195</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1376195</guid><dc:creator><![CDATA[XP*]]></dc:creator><pubDate>Mon, 01 Oct 2007 19:50:02 GMT</pubDate></item><item><title><![CDATA[Reply to Zeiger on Tue, 02 Oct 2007 15:46:57 GMT]]></title><description><![CDATA[<p>Ich bekomme hier bei foo - Undefiniertes Symbol 'foo' in main(), Zeile 20.</p>
<p>Was muss dafür rein? a? Und wohin damit überhaupt?^^</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1376703</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1376703</guid><dc:creator><![CDATA[daLord]]></dc:creator><pubDate>Tue, 02 Oct 2007 15:46:57 GMT</pubDate></item><item><title><![CDATA[Reply to Zeiger on Tue, 02 Oct 2007 16:07:41 GMT]]></title><description><![CDATA[<p>Damit gehts:<br />
int foo, ichbindoof=true;</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1376725</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1376725</guid><dc:creator><![CDATA[Enten wieder gewickelt]]></dc:creator><pubDate>Tue, 02 Oct 2007 16:07:41 GMT</pubDate></item><item><title><![CDATA[Reply to Zeiger on Tue, 02 Oct 2007 17:11:46 GMT]]></title><description><![CDATA[<p>Enten wieder gewickelt schrieb:</p>
<blockquote>
<p>Damit gehts:<br />
int foo, ichbindoof=true;</p>
</blockquote>
<p>Das kannst du dir sparen, auch wars bestimmt anfangs mal schwer von Begriff.</p>
<p>Foo (und auch bar) sind Namen, die man verwendet, wenn man ein Namen braucht, aber keine Ahnung hat, welchen man nehmen soll. Die Bedeutung ist also nicht vorhanden. Natürlich muss die variable foo vorher angelegt werden, oder ausgetauscht werden, bevor sowas wie &quot;cin &gt;&gt; foo&quot; funktioniert.<br />
Also</p>
<pre><code class="language-cpp">int foo;
bool all_okay;
all_okay = cin &gt;&gt; foo;
</code></pre>
<p>all_okay steht auf false wenn sowas wie &quot;lol112.445&quot; eingegeben wurde.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1376781</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1376781</guid><dc:creator><![CDATA[Krux]]></dc:creator><pubDate>Tue, 02 Oct 2007 17:11:46 GMT</pubDate></item></channel></rss>