<?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[Pointer Problem]]></title><description><![CDATA[<p>Ich verzeweifle fast weiß nicht weiter, habe glaube ich das Thema Pointer noch nich tso ganz verstanden. Habe Problem bei diesem Programm. Also es läuft schon einwandfrei. Möchte nur noch eine zusätzliche Funktion reinprogrammieren.<br />
Das quasi das Ergebnis gerundet ausgegeben wird. Hier das Programm</p>
<pre><code>// messwert2.h

#ifndef _MESSWERT2_H_INC
#define _MESSWERT2_H_INC

//Funktionsdeklarationen
void eingabe (double&amp; strom);
void verarbeitung(double* celsius, double&amp; strom);
void ausgabe (double* ausgeben);

#endif
</code></pre>
<pre><code>//messwert2.cpp

#include &quot;stdafx.h&quot;
#include &lt;iostream&gt;
#include &quot;messwert2.h&quot;
using namespace std;

//Eingabe mit Call by reference
void eingabe (double&amp; strom)
{
	cout &lt;&lt; &quot;Willkommen zur Messwerterfassung&quot; &lt;&lt; endl;
	cout &lt;&lt; &quot;Stromwert zwischen 4 und 20 mA eingeben: &quot;;
	cin &gt;&gt; strom;
}

//Verarbeitung mit Call by Pointer, danach Call by Pointer
void verarbeitung(double* celsius, double&amp; strom)
{
	*celsius = 70.0/16.0*(strom-4)-20;
}

//Ausgabe Call by Pointer
void ausgabe(double* ausgeben)
{
	cout &lt;&lt; &quot;Die Temperatur betraegt &quot; &lt;&lt; *ausgeben &lt;&lt; &quot; Grad Celsius&quot; &lt;&lt; endl;
}
</code></pre>
<pre><code>// Filename: messwert.main2.cpp

#include &quot;stdafx.h&quot;
#include &lt;iostream&gt;
#include &quot;messwert2.h&quot;
using namespace std;

int _tmain(int argc, _TCHAR* argv[])
{
	char zeichen = '\0';

	do{
		double strom = 0.0;
		// Übergabe der Eingabe mit Call by Reference
		eingabe(strom);

		if (strom == 4 || strom &lt;=20)
		{
			double celsius = 0.0;
			//Verarbeitung mit Call by Reference
			verarbeitung(&amp;celsius, strom);

			//Ausgabe der Temperatur mit Call by Reference

			ausgabe (&amp;celsius);

			cout &lt;&lt; &quot;Weiter mit j, Abbruch sonst: &quot;;
			cin &gt;&gt; zeichen;

		}else 
		{
			cout &lt;&lt; &quot;Fehler Messwerterfassung&quot; &lt;&lt; endl;
			cout &lt;&lt; &quot;Weiter mit j, Abbruch sonst: &quot;;
			cin &gt;&gt; zeichen;
		}
	}while (zeichen == 'j');

	return 0;
}
</code></pre>
<p>So jetzt muss ich jetzt nur noch in die Funktionsdefiniton das runden einbaun. Nur wie geht das? ISt es sinnvoll noch eine runden Funktin zu erstellen?</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/208905/pointer-problem</link><generator>RSS for Node</generator><lastBuildDate>Mon, 12 Oct 2026 03:01:31 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/208905.rss" rel="self" type="application/rss+xml"/><pubDate>Mon, 24 Mar 2008 13:04:00 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Pointer Problem on Mon, 24 Mar 2008 13:04:00 GMT]]></title><description><![CDATA[<p>Ich verzeweifle fast weiß nicht weiter, habe glaube ich das Thema Pointer noch nich tso ganz verstanden. Habe Problem bei diesem Programm. Also es läuft schon einwandfrei. Möchte nur noch eine zusätzliche Funktion reinprogrammieren.<br />
Das quasi das Ergebnis gerundet ausgegeben wird. Hier das Programm</p>
<pre><code>// messwert2.h

#ifndef _MESSWERT2_H_INC
#define _MESSWERT2_H_INC

//Funktionsdeklarationen
void eingabe (double&amp; strom);
void verarbeitung(double* celsius, double&amp; strom);
void ausgabe (double* ausgeben);

#endif
</code></pre>
<pre><code>//messwert2.cpp

#include &quot;stdafx.h&quot;
#include &lt;iostream&gt;
#include &quot;messwert2.h&quot;
using namespace std;

//Eingabe mit Call by reference
void eingabe (double&amp; strom)
{
	cout &lt;&lt; &quot;Willkommen zur Messwerterfassung&quot; &lt;&lt; endl;
	cout &lt;&lt; &quot;Stromwert zwischen 4 und 20 mA eingeben: &quot;;
	cin &gt;&gt; strom;
}

//Verarbeitung mit Call by Pointer, danach Call by Pointer
void verarbeitung(double* celsius, double&amp; strom)
{
	*celsius = 70.0/16.0*(strom-4)-20;
}

//Ausgabe Call by Pointer
void ausgabe(double* ausgeben)
{
	cout &lt;&lt; &quot;Die Temperatur betraegt &quot; &lt;&lt; *ausgeben &lt;&lt; &quot; Grad Celsius&quot; &lt;&lt; endl;
}
</code></pre>
<pre><code>// Filename: messwert.main2.cpp

#include &quot;stdafx.h&quot;
#include &lt;iostream&gt;
#include &quot;messwert2.h&quot;
using namespace std;

int _tmain(int argc, _TCHAR* argv[])
{
	char zeichen = '\0';

	do{
		double strom = 0.0;
		// Übergabe der Eingabe mit Call by Reference
		eingabe(strom);

		if (strom == 4 || strom &lt;=20)
		{
			double celsius = 0.0;
			//Verarbeitung mit Call by Reference
			verarbeitung(&amp;celsius, strom);

			//Ausgabe der Temperatur mit Call by Reference

			ausgabe (&amp;celsius);

			cout &lt;&lt; &quot;Weiter mit j, Abbruch sonst: &quot;;
			cin &gt;&gt; zeichen;

		}else 
		{
			cout &lt;&lt; &quot;Fehler Messwerterfassung&quot; &lt;&lt; endl;
			cout &lt;&lt; &quot;Weiter mit j, Abbruch sonst: &quot;;
			cin &gt;&gt; zeichen;
		}
	}while (zeichen == 'j');

	return 0;
}
</code></pre>
<p>So jetzt muss ich jetzt nur noch in die Funktionsdefiniton das runden einbaun. Nur wie geht das? ISt es sinnvoll noch eine runden Funktin zu erstellen?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1479555</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1479555</guid><dc:creator><![CDATA[problem]]></dc:creator><pubDate>Mon, 24 Mar 2008 13:04:00 GMT</pubDate></item><item><title><![CDATA[Reply to Pointer Problem on Mon, 24 Mar 2008 13:42:56 GMT]]></title><description><![CDATA[<p>ich glaube du hast auch nich den sinn von der übergabe per referenz an eine funktion verstanden.<br />
Sinn ist, das du deiner Funktion eine Referenz auf einen Wert übergibst und somit gleich mit dem Original aus der Main arbeitest, es bringt recht wenig wenn du deiner</p>
<pre><code class="language-cpp">void eingabe
</code></pre>
<p>eine Referenz übergibst aber dann in der Funktion nochmal eine Eingabe machst, mach doch die Eingabe in der Main und übergebe diese Variable als Referenz an deine anderen Funktionen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1479580</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1479580</guid><dc:creator><![CDATA[Firefighter]]></dc:creator><pubDate>Mon, 24 Mar 2008 13:42:56 GMT</pubDate></item><item><title><![CDATA[Reply to Pointer Problem on Mon, 24 Mar 2008 13:46:44 GMT]]></title><description><![CDATA[<p>Du solltest in C++ soweit es geht auf Pointer verzichten und stattdessen Referenzen verwenden (wie du es ja schon mit der Funktion eingabe(double &amp;strom) gemacht hast).</p>
<p>Und ich nehme an, du willst nur die Ausgabe gerundet haben. Dafür gibt es die Stream-Methode precision():</p>
<pre><code class="language-cpp">double x = 1.234567890;
cout.precision(4); // vier Stellen insgesamt gerundet ausgeben
cout &lt;&lt; x; // 1.235
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1479581</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1479581</guid><dc:creator><![CDATA[~referenz]]></dc:creator><pubDate>Mon, 24 Mar 2008 13:46:44 GMT</pubDate></item><item><title><![CDATA[Reply to Pointer Problem on Mon, 24 Mar 2008 13:59:06 GMT]]></title><description><![CDATA[<p>Danke.<br />
Und wie geht das in dem Fall ohne dieses precision??</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1479591</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1479591</guid><dc:creator><![CDATA[Problem]]></dc:creator><pubDate>Mon, 24 Mar 2008 13:59:06 GMT</pubDate></item><item><title><![CDATA[Reply to Pointer Problem on Mon, 24 Mar 2008 14:04:34 GMT]]></title><description><![CDATA[<p>da musste dir deine rundenfunktion selber schreiben <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/1479595</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1479595</guid><dc:creator><![CDATA[Firefighter]]></dc:creator><pubDate>Mon, 24 Mar 2008 14:04:34 GMT</pubDate></item><item><title><![CDATA[Reply to Pointer Problem on Mon, 24 Mar 2008 14:08:01 GMT]]></title><description><![CDATA[<p>Das ist schon klar.</p>
<p>*ausgeben = int(100*(strom+0.005))/100.0;</p>
<p>muss sowas irgendwie einbinden weiß nur nicht wie ich das mache??</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1479597</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1479597</guid><dc:creator><![CDATA[Problem]]></dc:creator><pubDate>Mon, 24 Mar 2008 14:08:01 GMT</pubDate></item><item><title><![CDATA[Reply to Pointer Problem on Mon, 24 Mar 2008 15:20:03 GMT]]></title><description><![CDATA[<p>ich verstehe gerade nicht so ganz was du mit dem letzten bezwecken willst, reicht dir das precision nicht aus oder was meinst du?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1479630</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1479630</guid><dc:creator><![CDATA[Firefighter]]></dc:creator><pubDate>Mon, 24 Mar 2008 15:20:03 GMT</pubDate></item><item><title><![CDATA[Reply to Pointer Problem on Mon, 24 Mar 2008 15:29:59 GMT]]></title><description><![CDATA[<p>Problem schrieb:</p>
<pre><code>...
        if (strom == 4 || strom &lt;=20)
        {
...
</code></pre>
<p>sollte nicht besser</p>
<pre><code>...
        if (strom &gt;= 4 &amp;&amp; strom &lt;=20)
        {
...
</code></pre>
<p>geschrieben werden. <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>
]]></description><link>https://www.c-plusplus.net/forum/post/1479635</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1479635</guid><dc:creator><![CDATA[egon2]]></dc:creator><pubDate>Mon, 24 Mar 2008 15:29:59 GMT</pubDate></item><item><title><![CDATA[Reply to Pointer Problem on Mon, 24 Mar 2008 15:30:44 GMT]]></title><description><![CDATA[<p>Ich soll das von Hand machen. Und nicht irgendwelche vorgefertigten Dinge nutzen</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1479636</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1479636</guid><dc:creator><![CDATA[Problem]]></dc:creator><pubDate>Mon, 24 Mar 2008 15:30:44 GMT</pubDate></item></channel></rss>