<?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[länge von #define]]></title><description><![CDATA[<p>hallo<br />
wie lang darf den so ein define sein?</p>
<p>wie variablennamen max 32 oder beliebig lang? was passiert wenn nur die stellen 35-40 sich unterscheiden?</p>
<p>danke</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/117599/länge-von-define</link><generator>RSS for Node</generator><lastBuildDate>Fri, 21 Aug 2026 00:55:16 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/117599.rss" rel="self" type="application/rss+xml"/><pubDate>Tue, 09 Aug 2005 10:47:12 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to länge von #define on Tue, 09 Aug 2005 10:47:12 GMT]]></title><description><![CDATA[<p>hallo<br />
wie lang darf den so ein define sein?</p>
<p>wie variablennamen max 32 oder beliebig lang? was passiert wenn nur die stellen 35-40 sich unterscheiden?</p>
<p>danke</p>
]]></description><link>https://www.c-plusplus.net/forum/post/848604</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/848604</guid><dc:creator><![CDATA[fragenstellender]]></dc:creator><pubDate>Tue, 09 Aug 2005 10:47:12 GMT</pubDate></item><item><title><![CDATA[Reply to länge von #define on Tue, 09 Aug 2005 10:56:12 GMT]]></title><description><![CDATA[<p>Warum liest du dies nicht einfach in der Doku des Precompilers nach?</p>
<p>Mal abgesehen davon... wozu zum Geier brauchst du solche defines?<br />
Da sag ich nur viel Spaß beim Debuggen...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/848610</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/848610</guid><dc:creator><![CDATA[Mathias]]></dc:creator><pubDate>Tue, 09 Aug 2005 10:56:12 GMT</pubDate></item><item><title><![CDATA[Reply to länge von #define on Tue, 09 Aug 2005 11:04:24 GMT]]></title><description><![CDATA[<p>Der Standard sieht keine Längenbeschränkung vor. Das bedeutet nicht, das alle existieren Compiler bzw. Präprozessoren da ohne Beschrenkung sind. Letztliche Sicherheit gibt also nur die jeweilige Doku oder ein Test. Aber 30-40 ist wohl eher noch nicht problematisch (Lesbarkeiten mal aussen vor).</p>
]]></description><link>https://www.c-plusplus.net/forum/post/848619</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/848619</guid><dc:creator><![CDATA[ziemlich lang]]></dc:creator><pubDate>Tue, 09 Aug 2005 11:04:24 GMT</pubDate></item><item><title><![CDATA[Reply to länge von #define on Tue, 09 Aug 2005 11:23:13 GMT]]></title><description><![CDATA[<p>Mathias schrieb:</p>
<blockquote>
<p>wozu zum Geier brauchst du solche defines?<br />
Da sag ich nur viel Spaß beim Debuggen...</p>
</blockquote>
<p>Ich brauche die, da ich darin z.b. reinbringe in welcher klassie die vorkommen und noch unterscheide nach welcher sorte dann noch der name selbst<br />
D.H. 12-18 gehen da schon mal flöten</p>
<p>PS: was hat das mit dem debugger zu tun? wer damit umgehen kann, der hat auch kein Problem damit <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/848635</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/848635</guid><dc:creator><![CDATA[fragenstellender]]></dc:creator><pubDate>Tue, 09 Aug 2005 11:23:13 GMT</pubDate></item><item><title><![CDATA[Reply to länge von #define on Tue, 09 Aug 2005 11:30:37 GMT]]></title><description><![CDATA[<p>fragenstellender schrieb:</p>
<blockquote>
<p>PS: was hat das mit dem debugger zu tun? wer damit umgehen kann, der hat auch kein Problem damit <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>
</blockquote>
<p>Dann verwechsle mal ein paar von deinen 40 zeichen #defines (die sich auch nur inder 32. bis 35. stelle unterscheiden ) und versuche beim debuggen draufzukommen wo der Fehler liegt. Viel Spass.<br />
Kurt</p>
]]></description><link>https://www.c-plusplus.net/forum/post/848639</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/848639</guid><dc:creator><![CDATA[ZuK]]></dc:creator><pubDate>Tue, 09 Aug 2005 11:30:37 GMT</pubDate></item><item><title><![CDATA[Reply to länge von #define on Tue, 09 Aug 2005 11:45:02 GMT]]></title><description><![CDATA[<p>1. in dem defines werden nur texte für den kunden angezeigt<br />
2. &quot;verwechseln&quot; ist immer dumm. Egal ob 35-40 stelle oder ich ein ganz anderes falsches nehme. das ist also kein argument</p>
<p>wenn in der messagebox der falsche text angezeigt wird, wird der falsche text angezeigt. ob von einem langen makro ( wo nur letze stellen sich unterscheiden ) oder ein kurzes!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/848645</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/848645</guid><dc:creator><![CDATA[fragenstellender]]></dc:creator><pubDate>Tue, 09 Aug 2005 11:45:02 GMT</pubDate></item><item><title><![CDATA[Reply to länge von #define on Tue, 09 Aug 2005 11:50:46 GMT]]></title><description><![CDATA[<p>warum denn defines? nimm doch einfach const char* oder strings.<br />
Konstanten mit defines fetzulegen ist eine C-Unart die in C++ eigentlich nicht mehr verwendet werden braucht und auf verschiedene Art zu Problemen führen kann...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/848649</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/848649</guid><dc:creator><![CDATA[pumuckl]]></dc:creator><pubDate>Tue, 09 Aug 2005 11:50:46 GMT</pubDate></item><item><title><![CDATA[Reply to länge von #define on Tue, 09 Aug 2005 12:07:23 GMT]]></title><description><![CDATA[<p>pumuckl schrieb:</p>
<blockquote>
<p>warum denn defines? nimm doch einfach const char* oder strings.<br />
Konstanten mit defines fetzulegen ist eine C-Unart die in C++ eigentlich nicht mehr verwendet werden braucht und auf verschiedene Art zu Problemen führen kann...</p>
</blockquote>
<p>naja const char* ist sehr unklug wenn du in 5 sprachen lokalisieren musst</p>
<p>sowas find ich leichter</p>
<p>#define ABC_CLASSXYZ_FEHLENDEKDN_ERROR &quot;123&quot;</p>
<p>dann in einem .txt file</p>
<p>123=Sie haben vergessen die Kundennummer einzutragen</p>
<p>das kann man z.b. in english dann so einsetzen</p>
<p>123=YOU forgot ....</p>
<p>im code macht man dann</p>
<p>...GetMessageString(ABC_CLASSXYZ_FEHLENDEKDN_ERROR)...</p>
<p>Welche Möglichkeiten gibt es da noch? oder ist die von mir schon ziemlich gut?</p>
<p>PS: auf einem server werden die sprachen eingetragen und beim download gibt man die sprache an und erhält die richtige .txt datei</p>
]]></description><link>https://www.c-plusplus.net/forum/post/848658</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/848658</guid><dc:creator><![CDATA[fragenstellender]]></dc:creator><pubDate>Tue, 09 Aug 2005 12:07:23 GMT</pubDate></item><item><title><![CDATA[Reply to länge von #define on Tue, 09 Aug 2005 12:16:04 GMT]]></title><description><![CDATA[<p>Hi,</p>
<p>ich benutze für sowas meistens einen message_server. Das ist im prinzip ein wrapper um ne map. Beim program start kümmert der sich um das laden der richtigen messages und man kann dann während des programlaufs wie mit einer map arbeiten. Die selectoren definiere ich als member eines enums.</p>
<p>Ne andere möglichkeit wäre natürlich das ganze wirklich über defines zu machen und einfach verschiedensprachige builds zu erstellen. Dann kann mans allerdings während der laufzeit nicht mehr ändern.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/848665</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/848665</guid><dc:creator><![CDATA[prolog]]></dc:creator><pubDate>Tue, 09 Aug 2005 12:16:04 GMT</pubDate></item><item><title><![CDATA[Reply to länge von #define on Tue, 09 Aug 2005 12:16:42 GMT]]></title><description><![CDATA[<p>wo ist der Unterschied zu</p>
<pre><code class="language-cpp">const char * ABC_CLASSXYZ_FEHLENDEKDN_ERROR  = &quot;123&quot; ;
....

GetMessageString(ABC_CLASSXYZ_FEHLENDEKDN_ERROR)
</code></pre>
<p>IMHO kein Grund #defines zu verwenden.<br />
Kurt</p>
]]></description><link>https://www.c-plusplus.net/forum/post/848667</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/848667</guid><dc:creator><![CDATA[ZuK]]></dc:creator><pubDate>Tue, 09 Aug 2005 12:16:42 GMT</pubDate></item><item><title><![CDATA[Reply to länge von #define on Tue, 09 Aug 2005 12:19:31 GMT]]></title><description><![CDATA[<blockquote>
<p>und auf verschiedene Art zu Problemen führen kann...</p>
</blockquote>
<p>wow echt? z.b.<br />
also wenn es einen guten grund gibt, dann denke ich beim nächsten mal dran</p>
]]></description><link>https://www.c-plusplus.net/forum/post/848669</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/848669</guid><dc:creator><![CDATA[fragenstellender]]></dc:creator><pubDate>Tue, 09 Aug 2005 12:19:31 GMT</pubDate></item><item><title><![CDATA[Reply to länge von #define on Tue, 09 Aug 2005 13:03:53 GMT]]></title><description><![CDATA[<p><a class="plugin-mentions-user plugin-mentions-a" href="https://www.c-plusplus.net/forum/uid/7155">@ZuK</a><br />
Der Unterschied liegt darin, dass bei #define der Text jedesmal in den Sourcecode eingefügt wird, während beim Pointer nur die Adresse weiter gereicht wird.<br />
#defines sind daher besonders bei vielen Texten zu empfehlen und bei größeren Programmen da man jedesmal das komplette Programm übersetzen muss, damit die Texte überall aktuell sind...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/848701</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/848701</guid><dc:creator><![CDATA[Mathias]]></dc:creator><pubDate>Tue, 09 Aug 2005 13:03:53 GMT</pubDate></item><item><title><![CDATA[Reply to länge von #define on Tue, 09 Aug 2005 13:11:02 GMT]]></title><description><![CDATA[<p>Mathias schrieb:</p>
<blockquote>
<p><a class="plugin-mentions-user plugin-mentions-a" href="https://www.c-plusplus.net/forum/uid/7155">@ZuK</a><br />
Der Unterschied liegt darin, dass bei #define der Text jedesmal in den Sourcecode eingefügt wird, während beim Pointer nur die Adresse weiter gereicht wird.<br />
#defines sind daher besonders bei vielen Texten zu empfehlen und bei größeren Programmen da man jedesmal das komplette Programm übersetzen muss, damit die Texte überall aktuell sind...</p>
</blockquote>
<p>kann es auch sein dass beim</p>
<p>const *char ( global angelegt ) es sein kann das einige compiler da speicher reservieren???</p>
]]></description><link>https://www.c-plusplus.net/forum/post/848707</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/848707</guid><dc:creator><![CDATA[fragenstellender]]></dc:creator><pubDate>Tue, 09 Aug 2005 13:11:02 GMT</pubDate></item><item><title><![CDATA[Reply to länge von #define on Tue, 09 Aug 2005 13:52:40 GMT]]></title><description><![CDATA[<p>@fragenstellender<br />
Für const char * wird er einen Zeiger anlegen, da der Zeiger nicht konstant ist, sondern nur die Zeichen auf die er verweist.<br />
const char * const sichert ihm erst zu, dass der Zeiger nicht verändert wird und somit nicht als Variable gehalten werden muss.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/848743</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/848743</guid><dc:creator><![CDATA[Mathias]]></dc:creator><pubDate>Tue, 09 Aug 2005 13:52:40 GMT</pubDate></item><item><title><![CDATA[Reply to länge von #define on Tue, 09 Aug 2005 14:02:41 GMT]]></title><description><![CDATA[<p>Mathias schrieb:</p>
<blockquote>
<p><a class="plugin-mentions-user plugin-mentions-a" href="https://www.c-plusplus.net/forum/uid/7155">@ZuK</a><br />
Der Unterschied liegt darin, dass bei #define der Text jedesmal in den Sourcecode eingefügt wird, während beim Pointer nur die Adresse weiter gereicht wird.<br />
#defines sind daher besonders bei vielen Texten zu empfehlen und bei größeren Programmen da man jedesmal das komplette Programm übersetzen muss, damit die Texte überall aktuell sind...</p>
</blockquote>
<p>Meine Frage nach dem Unterschied bezug sich auf die Aussage</p>
<p>fragenstellender schrieb:</p>
<blockquote>
<p>naja const char* ist sehr unklug wenn du in 5 sprachen lokalisieren musst</p>
<p>sowas find ich leichter</p>
<p>#define ABC_CLASSXYZ_FEHLENDEKDN_ERROR &quot;123&quot;</p>
<p>dann in einem .txt file</p>
<p>123=Sie haben vergessen die Kundennummer einzutragen</p>
<p>das kann man z.b. in english dann so einsetzen</p>
<p>123=YOU forgot ....</p>
<p>im code macht man dann</p>
<p>...GetMessageString(ABC_CLASSXYZ_FEHLENDEKDN_ERROR)...</p>
</blockquote>
<p>Und da machen const char * IMHO nicht mehr Arbeit.<br />
Kurt</p>
]]></description><link>https://www.c-plusplus.net/forum/post/848752</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/848752</guid><dc:creator><![CDATA[ZuK]]></dc:creator><pubDate>Tue, 09 Aug 2005 14:02:41 GMT</pubDate></item></channel></rss>