<?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 Variablen in einem einfachen Programm.]]></title><description><![CDATA[<p>Hallo <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>
<p>ich arbeite mich ktuell in C++ ein und habe bei einem kleinen Rechenprogramm einige kleine Probleme <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f615.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--confused_face"
      title=":confused:"
      alt="😕"
    /><br />
Der Code:</p>
<pre><code>#include &lt;iostream&gt;
using namespace std;

const int MwstSatz = 19;

int main()
{
	float Netto, Steuer, Brutto;

	cout &lt;&lt; &quot;Geben sie einen Nettopreis ein: &quot; &lt;&lt; endl;
	cin &gt;&gt; Netto;
	Steuer = Netto * MwstSatz / 100;
	cout &lt;&lt; &quot;Der Bruttopreis ist wiefolgt: &quot; &lt;&lt; Brutto &lt;&lt; endl;
	cin &gt;&gt; Brutto; // das ist nur ein Nutzloser Dummy, damit sich das Konsolenfenster nicht sofaor schließt. 

}
</code></pre>
<p>also: 1. der Compiler (microsoft visual 2010) gibt mir diesen Fehler aus: Run-Time Check Failure #3 - The variable 'Brutto' is being used without being initialized.<br />
Soviel ich weiß heißt das , dass sie keinem Wert zugewiesen ist aber ich verstehe nicht wieso das ein Fehler ist, da sie ja ausgegeben wird und außerdem auch in einer Eingabe Vorkommt...<br />
2. wenn ich das Programm trotzdem starte bekomme ich bei einem eingegebenen Nettopreis von 100 einen Bruttopreis von -1.07374e+008 als ergebnis angegeben <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/26a0.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--warning"
      title=":warning:"
      alt="⚠"
    /> <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f615.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--confused_face"
      title=":confused:"
      alt="😕"
    /></p>
<p>waru ist das so? naja hoffentlich könnt ihr mir helfen... <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/topic/306601/problem-mit-variablen-in-einem-einfachen-programm</link><generator>RSS for Node</generator><lastBuildDate>Fri, 07 Aug 2026 11:55:04 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/306601.rss" rel="self" type="application/rss+xml"/><pubDate>Thu, 02 Aug 2012 12:21:09 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Problem mit Variablen in einem einfachen Programm. on Thu, 02 Aug 2012 12:21:09 GMT]]></title><description><![CDATA[<p>Hallo <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>
<p>ich arbeite mich ktuell in C++ ein und habe bei einem kleinen Rechenprogramm einige kleine Probleme <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f615.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--confused_face"
      title=":confused:"
      alt="😕"
    /><br />
Der Code:</p>
<pre><code>#include &lt;iostream&gt;
using namespace std;

const int MwstSatz = 19;

int main()
{
	float Netto, Steuer, Brutto;

	cout &lt;&lt; &quot;Geben sie einen Nettopreis ein: &quot; &lt;&lt; endl;
	cin &gt;&gt; Netto;
	Steuer = Netto * MwstSatz / 100;
	cout &lt;&lt; &quot;Der Bruttopreis ist wiefolgt: &quot; &lt;&lt; Brutto &lt;&lt; endl;
	cin &gt;&gt; Brutto; // das ist nur ein Nutzloser Dummy, damit sich das Konsolenfenster nicht sofaor schließt. 

}
</code></pre>
<p>also: 1. der Compiler (microsoft visual 2010) gibt mir diesen Fehler aus: Run-Time Check Failure #3 - The variable 'Brutto' is being used without being initialized.<br />
Soviel ich weiß heißt das , dass sie keinem Wert zugewiesen ist aber ich verstehe nicht wieso das ein Fehler ist, da sie ja ausgegeben wird und außerdem auch in einer Eingabe Vorkommt...<br />
2. wenn ich das Programm trotzdem starte bekomme ich bei einem eingegebenen Nettopreis von 100 einen Bruttopreis von -1.07374e+008 als ergebnis angegeben <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/26a0.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--warning"
      title=":warning:"
      alt="⚠"
    /> <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f615.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--confused_face"
      title=":confused:"
      alt="😕"
    /></p>
<p>waru ist das so? naja hoffentlich könnt ihr mir helfen... <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/2237909</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2237909</guid><dc:creator><![CDATA[benimus]]></dc:creator><pubDate>Thu, 02 Aug 2012 12:21:09 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit Variablen in einem einfachen Programm. on Thu, 02 Aug 2012 12:25:55 GMT]]></title><description><![CDATA[<p>An welcher Stelle weist du &quot;Brutto&quot; einen Wert zu?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2237910</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2237910</guid><dc:creator><![CDATA[daddy_felix]]></dc:creator><pubDate>Thu, 02 Aug 2012 12:25:55 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit Variablen in einem einfachen Programm. on Thu, 02 Aug 2012 12:26:15 GMT]]></title><description><![CDATA[<p>Du musst der Variable 'Brutto' einen Startwert geben, das heisst initialisieren. Ansonsten hat die Variable irgend einen (oftmals sehr merkwuerdigen) Wert. Deshalb bekommst du dann auch ein so merkwuerdiges Ergebnis.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2237911</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2237911</guid><dc:creator><![CDATA[icarus2]]></dc:creator><pubDate>Thu, 02 Aug 2012 12:26:15 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit Variablen in einem einfachen Programm. on Thu, 02 Aug 2012 12:30:03 GMT]]></title><description><![CDATA[<p>Wie immer: float ist der <em>ungeeignetste</em> Datentyp für Geld. Die vermeintliche Ähnlichkeit ist rein optisch, logisch ist ein sehr großer Unterschied.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2237912</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2237912</guid><dc:creator><![CDATA[SeppJ]]></dc:creator><pubDate>Thu, 02 Aug 2012 12:30:03 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit Variablen in einem einfachen Programm. on Thu, 02 Aug 2012 14:24:27 GMT]]></title><description><![CDATA[<p>SeppJ schrieb:</p>
<blockquote>
<p>Wie immer: float ist der <em>ungeeignetste</em> Datentyp für Geld. Die vermeintliche Ähnlichkeit ist rein optisch, logisch ist ein sehr großer Unterschied.</p>
</blockquote>
<p>Und welcher typ wäre passender? <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/2237962</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2237962</guid><dc:creator><![CDATA[benimus]]></dc:creator><pubDate>Thu, 02 Aug 2012 14:24:27 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit Variablen in einem einfachen Programm. on Thu, 02 Aug 2012 14:26:28 GMT]]></title><description><![CDATA[<p>int/unsigned int</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2237964</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2237964</guid><dc:creator><![CDATA[Kellerautomat]]></dc:creator><pubDate>Thu, 02 Aug 2012 14:26:28 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit Variablen in einem einfachen Programm. on Thu, 02 Aug 2012 14:27:25 GMT]]></title><description><![CDATA[<p>icarus2 schrieb:</p>
<blockquote>
<p>Du musst der Variable 'Brutto' einen Startwert geben, das heisst initialisieren. Ansonsten hat die Variable irgend einen (oftmals sehr merkwuerdigen) Wert. Deshalb bekommst du dann auch ein so merkwuerdiges Ergebnis.</p>
</blockquote>
<p>Jo danke <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/2237967</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2237967</guid><dc:creator><![CDATA[benimus]]></dc:creator><pubDate>Thu, 02 Aug 2012 14:27:25 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit Variablen in einem einfachen Programm. on Thu, 02 Aug 2012 14:57:42 GMT]]></title><description><![CDATA[<p>benimus schrieb:</p>
<blockquote>
<p>SeppJ schrieb:</p>
<blockquote>
<p>Wie immer: float ist der <em>ungeeignetste</em> Datentyp für Geld. Die vermeintliche Ähnlichkeit ist rein optisch, logisch ist ein sehr großer Unterschied.</p>
</blockquote>
<p>Und welcher typ wäre passender? <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>
</blockquote>
<p>Man sollte auf cent-Basis <strong>rechnen</strong> (nicht einlesen umbedingt). Macht bei Programmierergehaelten sowieso mehr sinn <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>
<pre><code class="language-cpp">std::size_t cent;// Ein typedef auf einen vorzeichenlosen Skalar, definiert in &lt;cstring&gt;
float eur;
std::cin &gt;&gt; eur;
cent = eur * 100;
</code></pre>
<p><strong>Edit:</strong> Rechtschreibfehler korrigiert <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/2237970</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2237970</guid><dc:creator><![CDATA[Sone]]></dc:creator><pubDate>Thu, 02 Aug 2012 14:57:42 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit Variablen in einem einfachen Programm. on Thu, 02 Aug 2012 14:48:33 GMT]]></title><description><![CDATA[<p>ich hätte erwähnen sollen, dass ich ein blutiger anfänger bin <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="😃"
    /> bei so einem codebeispiel:</p>
<pre><code>std::size_t cent;// Ein typedef auf einen vorzeichenlosen Skalar, definiert in &lt;cstring&gt;
float eur;
std::cin &gt;&gt; eur;
cent = eur * 100;
</code></pre>
<p>saß ich so vor dem Rechner <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f62e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--face_with_open_mouth"
      title=":open_mouth:"
      alt="😮"
    /> ok, das meiste habe ich verstanden aber &quot;size_t&quot; und &quot;&lt;cstring&gt;&quot; ist mir nicht geläufig :P... egal<br />
der überarbeitete Quellcode:</p>
<pre><code>#include &lt;iostream&gt;
using namespace std;

const int MwstSatz = 19;

int main()
{
	unsigned int Netto;   
	unsigned int Brutto;
	unsigned int Steuer;

	cout &lt;&lt; &quot;Geben sie einen (positiven) Nettobetrag in Cent ein: &quot; &lt;&lt; endl;
	cin &gt;&gt; Netto;
	Steuer = MwstSatz * Netto / 100;
	Brutto = Netto + Steuer;
	cout &lt;&lt; &quot;Der Bruttopreis betraegt (bei &quot; &lt;&lt; MwstSatz &lt;&lt; &quot;% Mwst): &quot; &lt;&lt; Brutto &lt;&lt; endl;
	cin &gt;&gt; Brutto;

}
</code></pre>
<p>funktioniert auch alles wie gewollt <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/2237979</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2237979</guid><dc:creator><![CDATA[benimus]]></dc:creator><pubDate>Thu, 02 Aug 2012 14:48:33 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit Variablen in einem einfachen Programm. on Thu, 02 Aug 2012 14:49:36 GMT]]></title><description><![CDATA[<p>benimus schrieb:</p>
<blockquote>
<p>&quot;size_t&quot;</p>
</blockquote>
<p>Anfaenger? Ich formuliere es mal so: **Ist dasselbe wie <code>unsigned int</code> **</p>
<p>benimus schrieb:</p>
<blockquote>
<p>und &quot;&lt;cstring&gt;&quot; ist mir nicht geläufig <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f61b.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--face_with_tongue"
      title=":P"
      alt="😛"
    /></p>
</blockquote>
<pre><code class="language-cpp">#include &lt;cstring&gt;
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/2237980</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2237980</guid><dc:creator><![CDATA[Sone]]></dc:creator><pubDate>Thu, 02 Aug 2012 14:49:36 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit Variablen in einem einfachen Programm. on Thu, 02 Aug 2012 15:01:55 GMT]]></title><description><![CDATA[<p>Sone schrieb:</p>
<blockquote>
<p>benimus schrieb:</p>
<blockquote>
<p>&quot;size_t&quot;</p>
</blockquote>
<p>Anfaenger? Ich formuliere es mal so: **Ist dasselbe wie <code>unsigned int</code> **</p>
<p>benimus schrieb:</p>
<blockquote>
<p>und &quot;&lt;cstring&gt;&quot; ist mir nicht geläufig <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f61b.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--face_with_tongue"
      title=":P"
      alt="😛"
    /></p>
</blockquote>
<pre><code class="language-cpp">#include &lt;cstring&gt;
</code></pre>
</blockquote>
<p>size_t ist aus &lt;cstddef&gt;, nicht aus &lt;cstring&gt;</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2237983</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2237983</guid><dc:creator><![CDATA[IrgendeinName]]></dc:creator><pubDate>Thu, 02 Aug 2012 15:01:55 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit Variablen in einem einfachen Programm. on Thu, 02 Aug 2012 14:55:50 GMT]]></title><description><![CDATA[<p>Sone schrieb:</p>
<blockquote>
<pre><code class="language-cpp">std::size_t cent;// Ein typedef auf einen vorzeichenlosen Skalar, definiert in &lt;cstring&gt;
</code></pre>
</blockquote>
<p>Wie kommst du denn bitte auf size_t für Geld?</p>
<p><a class="plugin-mentions-user plugin-mentions-a" href="https://www.c-plusplus.net/forum/uid/29563">@benimus</a>: cstring ist ein Header, der Deklarationen und Definitionen (hauptsächlich) zur Nutzung der Stringoperationen der C-Standardlibrary enthält. Unter anderem eben auch den Typ size_t. Dieser wird meist für Größenangaben von Speicherbereichen genutzt (z.B. eben bei memcpy aus cstring) und ist auch der Ergebnistyp des sizeof-Operators.</p>
<p>Brauchst du hier aber imho alles nicht.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2237987</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2237987</guid><dc:creator><![CDATA[Fischrahmsoße]]></dc:creator><pubDate>Thu, 02 Aug 2012 14:55:50 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit Variablen in einem einfachen Programm. on Thu, 02 Aug 2012 14:59:19 GMT]]></title><description><![CDATA[<p>IrgendeinName schrieb:</p>
<blockquote>
<p>Sone schrieb:</p>
<blockquote>
<p>benimus schrieb:</p>
<blockquote>
<p>&quot;size_t&quot;</p>
</blockquote>
<p>Anfaenger? Ich formuliere es mal so: **Ist dasselbe wie <code>unsigned int</code> **</p>
<p>benimus schrieb:</p>
<blockquote>
<p>und &quot;&lt;cstring&gt;&quot; ist mir nicht geläufig <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f61b.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--face_with_tongue"
      title=":P"
      alt="😛"
    /></p>
</blockquote>
<pre><code class="language-cpp">#include &lt;cstring&gt;
</code></pre>
</blockquote>
<p>size_t ist aus &lt;cstdlib&gt;, nicht aus &lt;cstring&gt;</p>
</blockquote>
<p>Nein, es ist aus cstring!</p>
<p>size_t ist ein Groessentyp. Die Anzahl von Cents ist eine Groesse. <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/27a1.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--right_arrow"
      title=":arrow_right:"
      alt="➡"
    /> <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f4a1.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--light_bulb"
      title=":bulb:"
      alt="💡"
    /></p>
<p>Edit: Ausserdem braucht man <code>&lt;cstring&gt;</code> fuer <code>size_t</code> fast nie einzubinden, da das die meisten anderen Header schon machen...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2237988</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2237988</guid><dc:creator><![CDATA[Sone]]></dc:creator><pubDate>Thu, 02 Aug 2012 14:59:19 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit Variablen in einem einfachen Programm. on Thu, 02 Aug 2012 15:02:02 GMT]]></title><description><![CDATA[<p>IrgendeinName schrieb:</p>
<blockquote>
<p>size_t ist aus &lt;cstdlib&gt;, nicht aus &lt;cstring&gt;</p>
</blockquote>
<p>Zumindest meine POSIX-Manpage sagt dazu:</p>
<pre><code>The &lt;string.h&gt; header shall define the following:

       NULL   Null pointer constant.

       size_t As described in &lt;stddef.h&gt; .
</code></pre>
<p>Bezweifle, dass sich C++ hier unterscheidet. Tatsächlich müssen aber sowohl stdlib.h, als auch string.h (neben stddef.h) den size_t-Typedef verfügbar machen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2237989</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2237989</guid><dc:creator><![CDATA[Fischrahmsoße]]></dc:creator><pubDate>Thu, 02 Aug 2012 15:02:02 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit Variablen in einem einfachen Programm. on Thu, 02 Aug 2012 15:26:46 GMT]]></title><description><![CDATA[<p>Sone schrieb:</p>
<blockquote>
<p>benimus schrieb:</p>
<blockquote>
<p>&quot;size_t&quot;</p>
</blockquote>
<p>Anfaenger? Ich formuliere es mal so: **Ist dasselbe wie <code>unsigned int</code> **</p>
<p>benimus schrieb:</p>
<blockquote>
<p>und &quot;&lt;cstring&gt;&quot; ist mir nicht geläufig <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f61b.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--face_with_tongue"
      title=":P"
      alt="😛"
    /></p>
</blockquote>
<pre><code class="language-cpp">#include &lt;cstring&gt;
</code></pre>
</blockquote>
<p>ok, und das mit &lt;cstring&gt; war mir klar, ich weiß nur nicht, was das bewirkt :p</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2237996</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2237996</guid><dc:creator><![CDATA[benimus]]></dc:creator><pubDate>Thu, 02 Aug 2012 15:26:46 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit Variablen in einem einfachen Programm. on Thu, 02 Aug 2012 15:41:54 GMT]]></title><description><![CDATA[<p>Wenn du Zeit hast, studiere folgenden Code (dein Code sollte so aussehen):</p>
<pre><code class="language-cpp">#include &lt;iostream&gt;
#include &lt;limits&gt;
#include &lt;iomanip&gt;
#include &lt;complex&gt;

const float MwstSatz = 0.19;
const size_t CentsInEur = 100;

int main()
{
    size_t Nettoct, Steuerct, Bruttoct;

    std::cout &lt;&lt; &quot;Geben sie einen Nettopreis ein: \n&quot;;

    {//Eingabe
        float ct;
        while(!(std::cin &gt;&gt; ct))
        {
            std::cout &lt;&lt; &quot;Bitte richtig machen, doedel!\n&quot;;
            std::cin.clear(); //Stream zuruecksetzen
            std::cin.ignore( std::numeric_limits&lt;std::streamsize&gt;::max(), '\n' );
        }
        Nettoct = ct * CentsInEur;
    }

    Steuerct = Nettoct * MwstSatz; // Muss das gepuffert werden... ?
    Bruttoct = Nettoct + Steuerct;
    float BruttoEur = static_cast&lt;float&gt;(Bruttoct) / CentsInEur;//Hier wird Brutto in Cent wieder in Euro umgewandelt

    std::cout &lt;&lt; &quot;Der Bruttopreis ist wiefolgt: &quot; //Ausgabe
              &lt;&lt; std::setprecision(  std::log10(BruttoEur) + 1 + std::log10(CentsInEur) ) //Wir wollen 2 Nachkommastellen, also sagen wir das
              &lt;&lt; BruttoEur 
              &lt;&lt; '\n';

    std::cin.get();
}
</code></pre>
<p><a href="http://ideone.com/88ZyA" rel="nofollow">http://ideone.com/88ZyA</a></p>
<p>Wenn du besonders viel Zeit hast, bastele noch ein/zwei Klassen, die das alles koennen!</p>
<p>Schoener gingen die globalen Konstanten natuerlich mit <code>std::ratio</code> .</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2237998</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2237998</guid><dc:creator><![CDATA[Sone]]></dc:creator><pubDate>Thu, 02 Aug 2012 15:41:54 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit Variablen in einem einfachen Programm. on Thu, 02 Aug 2012 15:42:35 GMT]]></title><description><![CDATA[<p>Sone schrieb:</p>
<blockquote>
<p>Wenn du Zeit hast, studiere folgenden Code (dein Code sollte so aussehen):</p>
<pre><code class="language-cpp">#include &lt;iostream&gt;
#include &lt;limits&gt;
#include &lt;iomanip&gt;
#include &lt;complex&gt;

const float MwstSatz = 0.19;
const size_t CentsInEur = 100;

int main()
{
    size_t Nettoct, Steuerct, Bruttoct;

    std::cout &lt;&lt; &quot;Geben sie einen Nettopreis ein: \n&quot;;

    {//Eingabe
        float ct;
        while(!(std::cin &gt;&gt; ct))
        {
            std::cout &lt;&lt; &quot;Bitte richtig machen, doedel!\n&quot;;
            std::cin.clear(); //Stream zuruecksetzen
            std::cin.ignore( std::numeric_limits&lt;std::streamsize&gt;::max(), '\n' );
        }
        Nettoct = ct * CentsInEur;
    }

    Steuerct = Nettoct * MwstSatz; // Muss das gepuffert werden... ?
    Bruttoct = Nettoct + Steuerct;
    float BruttoEur = static_cast&lt;float&gt;(Bruttoct) / CentsInEur;//Hier wird Brutto in Cent wieder in Euro umgewandelt

    std::cout &lt;&lt; &quot;Der Bruttopreis ist wiefolgt: &quot; //Ausgabe
              &lt;&lt; std::setprecision(  std::log10(BruttoEur) + 1 + std::log10(CentsInEur) ) //Wir wollen 2 Nachkommastellen, also sagen wir das
              &lt;&lt; BruttoEur 
              &lt;&lt; '\n';

    std::cin.get();
}
</code></pre>
<p><a href="http://ideone.com/88ZyA" rel="nofollow">http://ideone.com/88ZyA</a></p>
<p>Wenn du besonders viel Zeit hast, bastele noch ein/zwei Klassen, die das alles koennen!</p>
<p>Schoener gingen die globalen Konstanten natuerlich mit <code>std::ratio</code> .</p>
</blockquote>
<p>öhm, danke... <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f62e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--face_with_open_mouth"
      title=":open_mouth:"
      alt="😮"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/2238001</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2238001</guid><dc:creator><![CDATA[benimus]]></dc:creator><pubDate>Thu, 02 Aug 2012 15:42:35 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit Variablen in einem einfachen Programm. on Thu, 02 Aug 2012 15:45:58 GMT]]></title><description><![CDATA[<p>Ist zum lernen. Geh Zeile fuer Zeile durch und schlag in der Referenz nach. Bei Fragen, frag hier im Thread oder mach einen zweiten auf.</p>
<p>Edit: Zeile 21 ist wirklich etwas kompliziert. Ueberspring die erstmal.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2238003</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2238003</guid><dc:creator><![CDATA[Sone]]></dc:creator><pubDate>Thu, 02 Aug 2012 15:45:58 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit Variablen in einem einfachen Programm. on Thu, 02 Aug 2012 17:26:23 GMT]]></title><description><![CDATA[<p>Sone schrieb:</p>
<blockquote>
<p>benimus schrieb:</p>
<blockquote>
<p>&quot;size_t&quot;</p>
</blockquote>
<p>Anfaenger? Ich formuliere es mal so: **Ist dasselbe wie <code>unsigned int</code> **</p>
</blockquote>
<p>Anfänger?<br />
Ja, du bist ein Anfänger. Deine Behauptung ist falsch. Dein inflationäres Geplapper spiegelt Anfängeraberglauben und naives Unverständnis bei Grundlagen zu C bzw. C++ wider.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2238030</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2238030</guid><dc:creator><![CDATA[Wutz]]></dc:creator><pubDate>Thu, 02 Aug 2012 17:26:23 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit Variablen in einem einfachen Programm. on Thu, 02 Aug 2012 18:05:21 GMT]]></title><description><![CDATA[<p>size_t wird in &lt;cstio&gt;, &lt;cstdlib&gt;, &lt;cstring&gt; und &lt;ctime&gt; deklariert.</p>
<p>Sone schrieb:</p>
<blockquote>
<p>size_t ist ein Groessentyp. Die Anzahl von Cents ist eine Groesse. <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/27a1.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--right_arrow"
      title=":arrow_right:"
      alt="➡"
    /> <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f4a1.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--light_bulb"
      title=":bulb:"
      alt="💡"
    /></p>
</blockquote>
<p>Nicht jeder mit einer Erleuchtung ist auch ein Prophet. Die meisten sind bloss Spinner.</p>
<p>Sone schrieb:</p>
<blockquote>
<p>Edit: Ausserdem braucht man <code>&lt;cstring&gt;</code> fuer <code>size_t</code> fast nie einzubinden, da das die meisten anderen Header schon machen...</p>
</blockquote>
<p>Keiner der anderen Standardheader bindet &lt;cstring&gt; ausdrücklich ein. Zudem ist &quot;<strong>fast</strong> nie&quot; gerade <em>kein</em> Grund, einen benötigten Header auszulassen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2238039</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2238039</guid><dc:creator><![CDATA[camper]]></dc:creator><pubDate>Thu, 02 Aug 2012 18:05:21 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit Variablen in einem einfachen Programm. on Thu, 02 Aug 2012 18:24:38 GMT]]></title><description><![CDATA[<p>Wutz schrieb:</p>
<blockquote>
<p>Deine Behauptung ist falsch.</p>
</blockquote>
<p>*lol*</p>
<p>Folgendes steht in einem Standardheader von MinGW (GCC 4.6.2):</p>
<pre><code class="language-cpp">#ifdef _WIN64//Ausnahme
_    _MINGW_EXTENSION typedef unsigned __int64 size_t;
#else
    typedef unsigned int size_t;
#endif /* _WIN64 */
</code></pre>
<p>Klar ist das im Standard nicht garantiert. Aber es einem Anfaenger so genau zu machen ist laecherlich unnoetig.</p>
<blockquote>
<blockquote>
<p>size_t ist ein Groessentyp. Die Anzahl von Cents ist eine Groesse.</p>
</blockquote>
<p>Nicht jeder mit einer Erleuchtung ist auch ein Prophet. Die meisten sind bloss Spinner.</p>
</blockquote>
<p>Ich sehe nach wie vor kein Problem, fuer eine Anzahl <code>size_t</code> zu verwenden. Klar war meine Formulierung bescheuert. Trotzdem sehe ich kein Problem.</p>
<blockquote>
<blockquote>
<p>Edit: Ausserdem braucht man &lt;cstring&gt; fuer size_t fast nie einzubinden, da das die meisten anderen Header schon machen...</p>
</blockquote>
<p>Keiner der anderen Standardheader bindet &lt;cstring&gt; ausdrücklich ein.</p>
</blockquote>
<p>Mit &quot;das&quot; meinte ich, <code>size_t</code> deklarieren. Edit: Jup, ich muss mich anders ausdruecken.<br />
Denn bspw. binde ich &lt;iostream&gt;, &lt;string&gt; o. ae. ein, ist size_t deklariert. Ich musste noch nie wegen size_t explizit einen deiner genannten Header einbinden.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2238044</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2238044</guid><dc:creator><![CDATA[Sone]]></dc:creator><pubDate>Thu, 02 Aug 2012 18:24:38 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit Variablen in einem einfachen Programm. on Thu, 02 Aug 2012 19:03:01 GMT]]></title><description><![CDATA[<p>Sone schrieb:</p>
<blockquote>
<p>Ich sehe nach wie vor kein Problem, fuer eine Anzahl <code>size_t</code> zu verwenden. Klar war meine Formulierung bescheuert. Trotzdem sehe ich kein Problem.</p>
</blockquote>
<p>Das Problem ist zum Beispiel, dass size_t nicht nur eine bestimmte Größe beschreibt, sondern die Größen von Speicherbereichen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2238050</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2238050</guid><dc:creator><![CDATA[otze]]></dc:creator><pubDate>Thu, 02 Aug 2012 19:03:01 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit Variablen in einem einfachen Programm. on Thu, 02 Aug 2012 19:46:34 GMT]]></title><description><![CDATA[<p>Sone schrieb:</p>
<blockquote>
<p>Klar ist das im Standard nicht garantiert. Aber es einem Anfaenger so genau zu machen ist laecherlich unnoetig.</p>
</blockquote>
<p>Das eine ist korrekt, das andere nicht. Demnächst fängst du noch an, J.W. zu zitieren.</p>
<p>Sone schrieb:</p>
<blockquote>
<p>camper schrieb:</p>
<blockquote>
<p>Sone schrieb:</p>
<blockquote>
<p>size_t ist ein Groessentyp. Die Anzahl von Cents ist eine Groesse.</p>
</blockquote>
<p>Nicht jeder mit einer Erleuchtung ist auch ein Prophet. Die meisten sind bloss Spinner.</p>
</blockquote>
<p>Ich sehe nach wie vor kein Problem, fuer eine Anzahl <code>size_t</code> zu verwenden. Klar war meine Formulierung bescheuert. Trotzdem sehe ich kein Problem.</p>
</blockquote>
<p>Das Problem fängt damit an, dass du die zu lösende Aufgabe nicht kennst. Was ist z.B. mit negativen Geldbeträgen? Je nach Aufgabenstellung ist so etwas sinnvoll oder eben auch nicht. Ein Warenpreis wird (m.E.) nie negativ sein, ein Kontostand ist das schon mal. Und überhaupt, bloss weil das Programm auf einem alten Rechner läuft, soll ich nicht mit hohen Millionbeträgen (in Euro) umgehen können?</p>
<p>Sone schrieb:</p>
<blockquote>
<p>camper schrieb:</p>
<blockquote>
<p>Sone schrieb:</p>
<blockquote>
<p>Edit: Ausserdem braucht man &lt;cstring&gt; fuer size_t fast nie einzubinden, da das die meisten anderen Header schon machen...</p>
</blockquote>
<p>Keiner der anderen Standardheader bindet &lt;cstring&gt; ausdrücklich ein.</p>
</blockquote>
<p>Mit &quot;das&quot; meinte ich, <code>size_t</code> deklarieren. Edit: Jup, ich muss mich anders ausdruecken.<br />
Denn bspw. binde ich &lt;iostream&gt;, &lt;string&gt; o. ae. ein, ist size_t deklariert. Ich musste noch nie wegen size_t explizit einen deiner genannten Header einbinden.</p>
</blockquote>
<p>In diesem Forum geht es um C++, vorzugsweise solches, das auch noch standardkonform ist. Nicht um deine persönlichen Erfahrungen. Die können vielleicht Indiz, aber niemals Grund sein.<br />
Irgendwann werden die Header sicher auch noch in Bezug auf size_t aufgeräumt werden. Wäre ja z.B. kein Problem, intern einen anderen Bezeichner wie __size_t oder so zu verwenden.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2238055</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2238055</guid><dc:creator><![CDATA[camper]]></dc:creator><pubDate>Thu, 02 Aug 2012 19:46:34 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit Variablen in einem einfachen Programm. on Thu, 02 Aug 2012 19:48:50 GMT]]></title><description><![CDATA[<p>[InGedanken]Haette ich bloss einfach int genommen, einfach int![/InGedanken]</p>
<p>Ist ja gut.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2238056</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2238056</guid><dc:creator><![CDATA[Sone]]></dc:creator><pubDate>Thu, 02 Aug 2012 19:48:50 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit Variablen in einem einfachen Programm. on Thu, 02 Aug 2012 20:14:57 GMT]]></title><description><![CDATA[<p>benimus schrieb:</p>
<blockquote>
<p>SeppJ schrieb:</p>
<blockquote>
<p>Wie immer: float ist der <em>ungeeignetste</em> Datentyp für Geld. Die vermeintliche Ähnlichkeit ist rein optisch, logisch ist ein sehr großer Unterschied.</p>
</blockquote>
<p>Und welcher typ wäre passender? <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>
</blockquote>
<p>Nur zum Verständnis:<br />
Gleitkommawerte wie float und double bieten eine Genauigkeit, die von der absoluten Größe des dargestellten Wertes abhängt. D.h. der relative Fehler des Wertes ist (näherungsweise) konstant.<br />
Das macht diese Typen geeignet für wissenschaftlich-technische Berechnungen, denn dort arbeitet man für gewöhnlich mit Größen, die einen gewissen bekannten Fehler relativ zur ihrer Größe aufweisen.</p>
<p>Finanzanwendungen sind da völlig anders: Geldbeträge sind in den allermeisten Fällen (wenn wir mal von Schätzwerten absehen) <em>exakte</em> (und diskrete) Größen. Und auch Rechenergebnisse (selbst wenn sie als Ergebnis eines Rundungsschrittes entstehen) sind <em>exakt</em> bzgl. dessen, was sie darstellen.<br />
Für derartige Berechnungen sind integrale Typen oder auch Festkommatypen, wie es sie in einigen Sprachen gibt, geeignet.<br />
Je nach Aufgabentyp wird man für gewöhnlich Rechnungen mit einer gewissen Grundeinheit durchführen, von der bekannt ist, dass hiervon keine Bruchteile auftreten können. Das können Euro sein, cent, vielleicht auch 1/100 cent (kennt man z.B. von Telefonkostenabrechnungen mit Einzelverbindungen) oder etwas anderes Aufgabenspezifisches.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2238061</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2238061</guid><dc:creator><![CDATA[camper]]></dc:creator><pubDate>Thu, 02 Aug 2012 20:14:57 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit Variablen in einem einfachen Programm. on Thu, 02 Aug 2012 20:52:06 GMT]]></title><description><![CDATA[<p>&quot; <code>long double</code> &quot; und &quot; <code>long long</code> &quot; sind geignet um Geldwerte darzustellen und spielen auch perfekt mt dem Standard zusammen. Wer absehbar größere, oder genauere Geldwerte darstellen muss kann ja hier weiter lamentieren und andere Typen nutzen.</p>
<p>Gruß und Kuss,<br />
Furble Wurble</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2238066</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2238066</guid><dc:creator><![CDATA[Furble Wurble]]></dc:creator><pubDate>Thu, 02 Aug 2012 20:52:06 GMT</pubDate></item></channel></rss>