<?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[Problem mit printf und scanf]]></title><description><![CDATA[<p>Hi Leute, ich nerve mich jetzt schon seit gestern über diesen Mist...<br />
Also folgendes Programm lässt sich tadellos compillieren:</p>
<pre><code>#include &lt;cstdio&gt;

int main(){
    int input;
    printf(&quot;Input:\n&quot;);
    scanf(&quot;%d&quot;,input);
    printf(&quot;Output:%d&quot;,input);
    return 0;
}
</code></pre>
<p>erzeugt aber einen Error beim ausführen und stürzt nach scanf ab. Meine Frage: Warum?</p>
<p>Infos:<br />
Compiler: MinGW (aktuelleste Version)<br />
IDE: Code::Blocks (aktuellste Version)<br />
Debugger: GBD (der von MinGW)<br />
OS: Vista<br />
Der Debugger sagt:<br />
Program received signal SIGSEGV, Segmentation fault.<br />
Do you want to view the backtrace?</p>
<p>Dazu muss ich noch sagen ich bin noch ein relativer Anfänger und hab bisher noch nie mit einem Debugger gearbeitet bzw. es nie gelernt und drum weiss ich auch nicht was der mir genau sagen will.<br />
Ich bin dankbar für jede Hilfe</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/237916/problem-mit-printf-und-scanf</link><generator>RSS for Node</generator><lastBuildDate>Wed, 23 Sep 2026 06:09:24 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/237916.rss" rel="self" type="application/rss+xml"/><pubDate>Fri, 03 Apr 2009 15:01:34 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Problem mit printf und scanf on Fri, 03 Apr 2009 15:01:34 GMT]]></title><description><![CDATA[<p>Hi Leute, ich nerve mich jetzt schon seit gestern über diesen Mist...<br />
Also folgendes Programm lässt sich tadellos compillieren:</p>
<pre><code>#include &lt;cstdio&gt;

int main(){
    int input;
    printf(&quot;Input:\n&quot;);
    scanf(&quot;%d&quot;,input);
    printf(&quot;Output:%d&quot;,input);
    return 0;
}
</code></pre>
<p>erzeugt aber einen Error beim ausführen und stürzt nach scanf ab. Meine Frage: Warum?</p>
<p>Infos:<br />
Compiler: MinGW (aktuelleste Version)<br />
IDE: Code::Blocks (aktuellste Version)<br />
Debugger: GBD (der von MinGW)<br />
OS: Vista<br />
Der Debugger sagt:<br />
Program received signal SIGSEGV, Segmentation fault.<br />
Do you want to view the backtrace?</p>
<p>Dazu muss ich noch sagen ich bin noch ein relativer Anfänger und hab bisher noch nie mit einem Debugger gearbeitet bzw. es nie gelernt und drum weiss ich auch nicht was der mir genau sagen will.<br />
Ich bin dankbar für jede Hilfe</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1690490</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1690490</guid><dc:creator><![CDATA[seeki]]></dc:creator><pubDate>Fri, 03 Apr 2009 15:01:34 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit printf und scanf on Fri, 03 Apr 2009 15:30:50 GMT]]></title><description><![CDATA[<p>Muss man an scanf nicht einem Pointer übergeben?<br />
Das sähe dann so aus:</p>
<pre><code class="language-cpp">scanf(&quot;%d&quot;,&amp;input);
</code></pre>
<p>Aber in C++ sollte man für sowas con und cout, also die Streams benutzen. Das ist wesentlich sicherer.<br />
Beispiel:</p>
<pre><code class="language-cpp">#include &lt;iostream&gt;
int main() {
 int i = 0;
 std::cout &lt;&lt; &quot;Nummer eingeben: &quot; &lt;&lt; std::flush; //std::flush zum ausgeben ohne newline
 std::cin &gt;&gt; i;
 std::cout &lt;&lt; i &lt;&lt; std::endl; //std::endl macht std::flush und ein newline
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1690503</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1690503</guid><dc:creator><![CDATA[The-Kenny]]></dc:creator><pubDate>Fri, 03 Apr 2009 15:30:50 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit printf und scanf on Fri, 03 Apr 2009 15:33:34 GMT]]></title><description><![CDATA[<p>DANKE...<br />
und wieso soll cout uns cin sicherer sein?<br />
Ich meine ausser es passiert jetzt was wie vorhin eben.<br />
Mein Problem mit iostream ist die Grösse, ich meine ohne Iostream is z.b. die Application ca. 40 mal kleiner als mit...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1690506</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1690506</guid><dc:creator><![CDATA[seeki]]></dc:creator><pubDate>Fri, 03 Apr 2009 15:33:34 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit printf und scanf on Fri, 03 Apr 2009 15:36:28 GMT]]></title><description><![CDATA[<p>seeki schrieb:</p>
<blockquote>
<p>und wieso soll cout uns cin sicherer sein?<br />
Ich meine ausser es passiert jetzt was wie vorhin eben.</p>
</blockquote>
<p>Genau deswegen <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>GCC hat aber meines Wissens eine Kommandozeilenoption, die in der Lage ist, solche Fehler aufzuspüren. Versuche mal, -Wformat zu übergeben.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1690510</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1690510</guid><dc:creator><![CDATA[audacia]]></dc:creator><pubDate>Fri, 03 Apr 2009 15:36:28 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit printf und scanf on Fri, 03 Apr 2009 15:48:21 GMT]]></title><description><![CDATA[<p>Wformat hat funktioniert, er zeigt zwar keinen Fehler aber ne Warnung an.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1690519</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1690519</guid><dc:creator><![CDATA[seeki]]></dc:creator><pubDate>Fri, 03 Apr 2009 15:48:21 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit printf und scanf on Fri, 03 Apr 2009 17:23:52 GMT]]></title><description><![CDATA[<p>seeki schrieb:</p>
<blockquote>
<p>und wieso soll cout uns cin sicherer sein?</p>
</blockquote>
<p>Vor allem Typsicherheit, die durch die Überladung gewährleistet wird (und im Übrigen die Angabe von Formatflags überflüssig macht). Dann mehr Sicherheit mit Klassentypen, weil keine Funktion mit variabler Parameterlänge im Spiel ist. Meist besserer Schutz vor Pufferüberläufen in Zusammenarbeit mit Klassen wie <code>std::string</code> .</p>
<p>Auch nützlich ist die leichte Erweiterbarkeit durch Definition eigener Stream-Operatoren.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1690555</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1690555</guid><dc:creator><![CDATA[Nexus]]></dc:creator><pubDate>Fri, 03 Apr 2009 17:23:52 GMT</pubDate></item></channel></rss>