<?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[globale variable: an funktionen übergeben?]]></title><description><![CDATA[<p>hi, habe eine frage zum verständniss: ich habe eine varibale global definiert, dann starte ich eine funktion der ich diese variable gar nicht übergebe und trotzdem &quot;kennt&quot; die funktion den wert? ist das normal, oder macht da der compiler was eingeständiges? bzw. kann ich dann in jeder funktion die variable benutzten (weil sie global definiert ist) ohne diese explizit zu übergeben? oder ist das nicht &quot;standard&quot;?</p>
<p>bsp:</p>
<pre><code class="language-cpp">#include &lt;iostream&gt;

using namespace std;

int ausgabe(int f);
int n;

int main (){
	int f;
	n=5;
	f=0;
	ausgabe (f); 
	return 0; }

int ausgabe(int f) {
	cout &lt;&lt; &quot;n=&quot;&lt;&lt;n&lt;&lt;endl;
	return 0;}
</code></pre>
<p>ausgabe:</p>
<p>n=5</p>
<p>-mfg-</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/171774/globale-variable-an-funktionen-übergeben</link><generator>RSS for Node</generator><lastBuildDate>Thu, 17 Sep 2026 14:10:44 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/171774.rss" rel="self" type="application/rss+xml"/><pubDate>Mon, 29 Jan 2007 10:19:48 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to globale variable: an funktionen übergeben? on Mon, 29 Jan 2007 10:19:48 GMT]]></title><description><![CDATA[<p>hi, habe eine frage zum verständniss: ich habe eine varibale global definiert, dann starte ich eine funktion der ich diese variable gar nicht übergebe und trotzdem &quot;kennt&quot; die funktion den wert? ist das normal, oder macht da der compiler was eingeständiges? bzw. kann ich dann in jeder funktion die variable benutzten (weil sie global definiert ist) ohne diese explizit zu übergeben? oder ist das nicht &quot;standard&quot;?</p>
<p>bsp:</p>
<pre><code class="language-cpp">#include &lt;iostream&gt;

using namespace std;

int ausgabe(int f);
int n;

int main (){
	int f;
	n=5;
	f=0;
	ausgabe (f); 
	return 0; }

int ausgabe(int f) {
	cout &lt;&lt; &quot;n=&quot;&lt;&lt;n&lt;&lt;endl;
	return 0;}
</code></pre>
<p>ausgabe:</p>
<p>n=5</p>
<p>-mfg-</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1219053</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1219053</guid><dc:creator><![CDATA[TeT]]></dc:creator><pubDate>Mon, 29 Jan 2007 10:19:48 GMT</pubDate></item><item><title><![CDATA[Reply to globale variable: an funktionen übergeben? on Mon, 29 Jan 2007 10:23:43 GMT]]></title><description><![CDATA[<p>ja! <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="🙂"
    /><br />
Der Gültigkeitsbereich von globalen Variablen erstreckt sich über das ganze Programm.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1219058</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1219058</guid><dc:creator><![CDATA[testor]]></dc:creator><pubDate>Mon, 29 Jan 2007 10:23:43 GMT</pubDate></item><item><title><![CDATA[Reply to globale variable: an funktionen übergeben? on Mon, 29 Jan 2007 11:07:33 GMT]]></title><description><![CDATA[<p>Hallo</p>
<blockquote>
<p>oder ist das nicht &quot;standard&quot;</p>
</blockquote>
<p>Es ist korrekt und standard, aber kein guter Stil. In den meisten Fällen sind Parameter und Klassenmember sinnvoller. Global braucht man bestenfalls Konstanten.</p>
<p>bis bald<br />
akari</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1219080</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1219080</guid><dc:creator><![CDATA[akari]]></dc:creator><pubDate>Mon, 29 Jan 2007 11:07:33 GMT</pubDate></item><item><title><![CDATA[Reply to globale variable: an funktionen übergeben? on Mon, 29 Jan 2007 14:55:30 GMT]]></title><description><![CDATA[<blockquote>
<p>bzw. kann ich dann in jeder funktion die variable benutzten (weil sie global definiert ist) ohne diese explizit zu übergeben?</p>
</blockquote>
<p>Ja, genau das bedeutet &quot;global&quot; <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="😃"
    /><br />
Und genau deswegen sind globale Variablen ja auch zumeist schlechter Stil.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1219242</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1219242</guid><dc:creator><![CDATA[hustbaer]]></dc:creator><pubDate>Mon, 29 Jan 2007 14:55:30 GMT</pubDate></item><item><title><![CDATA[Reply to globale variable: an funktionen übergeben? on Tue, 30 Jan 2007 13:35:20 GMT]]></title><description><![CDATA[<p>hi, danke erstmal für die tips und hinweise.</p>
<p>wenn ich jetzt aber ca. 5-10 variablen habe und diese fast alle in den jeweiligen funktionen brauche, macht das dann überhaupt sinn funktionen zu starten denen man &quot;soviele&quot; variablen übergeben &quot;muss&quot;?<br />
also für mich ist es sehr viel einfacher diese 5-10 variablen (die fast in jeder funktion komplett gebraucht werden) global zu definieren (in den funktionen werden ja auch noch variablen definiert die aber nur in der funk. gebraucht werden); dann sieht auch der funktionenstart nicht so &quot;lang&quot; aus (und ich muss nicht immer überlegen/nachschauen was ich alles übergeben muss?!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1219797</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1219797</guid><dc:creator><![CDATA[TeT]]></dc:creator><pubDate>Tue, 30 Jan 2007 13:35:20 GMT</pubDate></item><item><title><![CDATA[Reply to globale variable: an funktionen übergeben? on Tue, 30 Jan 2007 13:44:51 GMT]]></title><description><![CDATA[<p>Du kannst zb Variablen aus dem Hauptprogramm per Referenz übergeben da erspart man sich einiges an Speicher und bekommt den globalen mist weg.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1219807</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1219807</guid><dc:creator><![CDATA[Raven2]]></dc:creator><pubDate>Tue, 30 Jan 2007 13:44:51 GMT</pubDate></item><item><title><![CDATA[Reply to globale variable: an funktionen übergeben? on Tue, 30 Jan 2007 13:45:42 GMT]]></title><description><![CDATA[<p>Du kannst auch diese 5-10 Variablen in eine struct (oder class) packen und die dann übergeben. Dann ist alles wieder etwas übersichtlicher.<br />
Wenn du unbedingt nicht auf globale Variablen verzichten willst, könntest du dich auch mal zum Thema Singleton belesen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1219808</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1219808</guid><dc:creator><![CDATA[Braunstein]]></dc:creator><pubDate>Tue, 30 Jan 2007 13:45:42 GMT</pubDate></item><item><title><![CDATA[Reply to globale variable: an funktionen übergeben? on Tue, 30 Jan 2007 13:46:19 GMT]]></title><description><![CDATA[<p>Es ist auf jeden Fall sicherer, alle nötigen Werte als Parameter zu übergeben. Globale Variablen haben immer den Nachteil, daß <strong>JEDER</strong> darauf zugreifen kann - ergo hast du keine Kontrolle darüber, wer sie wie beeinflusst. Und eine globale Variable existiert nur einmal in deinem Programm, damit bist du extrem unflexibel.</p>
<p>Wenn dir die Parameterliste dadurch zu lang ist (und du sowieso immer das ganze Set benötigst - wozu das gut sein soll, frage ich lieber nicht), kannst du dir ja ein <code>struct options;</code> definieren und zwischen den beteiligten Funktionen herumreichen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1219809</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1219809</guid><dc:creator><![CDATA[CStoll]]></dc:creator><pubDate>Tue, 30 Jan 2007 13:46:19 GMT</pubDate></item></channel></rss>