<?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[Objektname&#x2F;Variablenname in String umwandeln - tricky]]></title><description><![CDATA[<p>Hi,</p>
<p>ich arbeite gerade daran eine HTML-Tabelle mit Hilfe von Bezeichnern in C++ zu erstellen. Im Grunde ist es relativ einfach, aber seht selbst.<br />
Ich habe ein Marko das wie folgt definiert ist:</p>
<pre><code>#define LISTE enumElement1 = (langes Argument), enumElement2 = (langes Argument) ...

enum
{
    LISTE
};
</code></pre>
<p>Nun möchte ich die einzelnen Bezeichner ( enumElement1 usw. ) als Spaltenbezeichnungen in einer HTML-Tabelle ausgeben.<br />
Dazu habe ich die Macros bereits mit Hilfe zweier parametrisierter Makros zu einem String umgewandelt:</p>
<pre><code>#define xstr(s) str(s)
#define str(s) #s

xstr (LISTE)
</code></pre>
<p>Sodass ich auf folgende Zeichenkette komme:</p>
<pre><code>&quot;enumElement1 = (langes Argument), enumElement2 = (langes Argument) ...&quot;
</code></pre>
<p>Damit konnte ich das Problem vorerst lösen. Jedoch muss ich mit Visual C++ 6.0 arbeiten, welches maximal 2048 Zeichen in einer Zeile zulässt.</p>
<p>Meine Frage besteht nun darin, ob es eine Möglichkeit gibt, einen automatischen Zeilenumbruch mit Hilfe des Präprozessors hinzubekommen, sodass ich folgenden code habe:</p>
<pre><code>&quot;4000 Zeichen lange Zeichenkette&quot;
&quot;die umgebrochen wurde&quot;
</code></pre>
<p>Damit hat der alte Compiler von VC++ 6.0 nämlich keine Probleme. Oder gibt es etwa eine einfachere Möglichkeit die Bezeichner aus dem Makro zu extrahieren?</p>
<p>Ich bin für jeden hilfreichen Tipp dankbar <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>
<p>P.S.: Ich kann weder den Compiler wechseln (in <a href="http://VS.NET" rel="nofollow">VS.NET</a>, VS2005 und gcc geht es), noch kann ich die Alptraumhaften Macros aus dem vorgegebenen Projekt entfernen.</p>
<p>Beste Grüße<br />
phiL</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/162550/objektname-variablenname-in-string-umwandeln-tricky</link><generator>RSS for Node</generator><lastBuildDate>Sat, 12 Sep 2026 09:20:09 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/162550.rss" rel="self" type="application/rss+xml"/><pubDate>Thu, 19 Oct 2006 16:59:48 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Objektname&#x2F;Variablenname in String umwandeln - tricky on Thu, 19 Oct 2006 16:59:48 GMT]]></title><description><![CDATA[<p>Hi,</p>
<p>ich arbeite gerade daran eine HTML-Tabelle mit Hilfe von Bezeichnern in C++ zu erstellen. Im Grunde ist es relativ einfach, aber seht selbst.<br />
Ich habe ein Marko das wie folgt definiert ist:</p>
<pre><code>#define LISTE enumElement1 = (langes Argument), enumElement2 = (langes Argument) ...

enum
{
    LISTE
};
</code></pre>
<p>Nun möchte ich die einzelnen Bezeichner ( enumElement1 usw. ) als Spaltenbezeichnungen in einer HTML-Tabelle ausgeben.<br />
Dazu habe ich die Macros bereits mit Hilfe zweier parametrisierter Makros zu einem String umgewandelt:</p>
<pre><code>#define xstr(s) str(s)
#define str(s) #s

xstr (LISTE)
</code></pre>
<p>Sodass ich auf folgende Zeichenkette komme:</p>
<pre><code>&quot;enumElement1 = (langes Argument), enumElement2 = (langes Argument) ...&quot;
</code></pre>
<p>Damit konnte ich das Problem vorerst lösen. Jedoch muss ich mit Visual C++ 6.0 arbeiten, welches maximal 2048 Zeichen in einer Zeile zulässt.</p>
<p>Meine Frage besteht nun darin, ob es eine Möglichkeit gibt, einen automatischen Zeilenumbruch mit Hilfe des Präprozessors hinzubekommen, sodass ich folgenden code habe:</p>
<pre><code>&quot;4000 Zeichen lange Zeichenkette&quot;
&quot;die umgebrochen wurde&quot;
</code></pre>
<p>Damit hat der alte Compiler von VC++ 6.0 nämlich keine Probleme. Oder gibt es etwa eine einfachere Möglichkeit die Bezeichner aus dem Makro zu extrahieren?</p>
<p>Ich bin für jeden hilfreichen Tipp dankbar <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>
<p>P.S.: Ich kann weder den Compiler wechseln (in <a href="http://VS.NET" rel="nofollow">VS.NET</a>, VS2005 und gcc geht es), noch kann ich die Alptraumhaften Macros aus dem vorgegebenen Projekt entfernen.</p>
<p>Beste Grüße<br />
phiL</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1157841</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1157841</guid><dc:creator><![CDATA[phil2k6]]></dc:creator><pubDate>Thu, 19 Oct 2006 16:59:48 GMT</pubDate></item></channel></rss>