<?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[Warum kommt der Fehler?]]></title><description><![CDATA[<p>Hallo Leute,</p>
<p>ich hab hier folgenden Code:</p>
<pre><code class="language-cpp">void rdir()
{
  DIR *dirHandle;
  struct dirent dirEntry;
  struct *dirent dirResult;

  // Open a folder
  dirHandle = opendir(&quot;.&quot;);

  int x = 0;
  if (dirHandle != NULL)
  {
    while (0 == (x = readdir_r(dirHandle, &amp;dirEntry, &amp;dirResult)))
    {
      puts(dirEntry.d_name);
    }

    closedir(dirHandle);
  }

  std::cin.get();
}

int main()
{
  rdir();
  return 0;
}
</code></pre>
<p>Und trotzdem kommt folgende Fehlermeldung:</p>
<blockquote>
<p>DirReadMain.cpp: In function ‘void rdir()’:<br />
DirReadMain.cpp:13:3: error: expected primary-expression before ‘struct’<br />
DirReadMain.cpp:13:3: error: expected ‘;’ before ‘struct’<br />
DirReadMain.cpp:21:55: error: ‘dirResult’ was not declared in this scope<br />
make: *** [DirReadMain.o] Error 1</p>
</blockquote>
<p>Was genau will er mir hier sagen? Wo liegt das Problem?</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/292602/warum-kommt-der-fehler</link><generator>RSS for Node</generator><lastBuildDate>Sun, 16 Aug 2026 20:57:04 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/292602.rss" rel="self" type="application/rss+xml"/><pubDate>Tue, 13 Sep 2011 18:26:15 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Warum kommt der Fehler? on Tue, 13 Sep 2011 18:36:07 GMT]]></title><description><![CDATA[<p>Hallo Leute,</p>
<p>ich hab hier folgenden Code:</p>
<pre><code class="language-cpp">void rdir()
{
  DIR *dirHandle;
  struct dirent dirEntry;
  struct *dirent dirResult;

  // Open a folder
  dirHandle = opendir(&quot;.&quot;);

  int x = 0;
  if (dirHandle != NULL)
  {
    while (0 == (x = readdir_r(dirHandle, &amp;dirEntry, &amp;dirResult)))
    {
      puts(dirEntry.d_name);
    }

    closedir(dirHandle);
  }

  std::cin.get();
}

int main()
{
  rdir();
  return 0;
}
</code></pre>
<p>Und trotzdem kommt folgende Fehlermeldung:</p>
<blockquote>
<p>DirReadMain.cpp: In function ‘void rdir()’:<br />
DirReadMain.cpp:13:3: error: expected primary-expression before ‘struct’<br />
DirReadMain.cpp:13:3: error: expected ‘;’ before ‘struct’<br />
DirReadMain.cpp:21:55: error: ‘dirResult’ was not declared in this scope<br />
make: *** [DirReadMain.o] Error 1</p>
</blockquote>
<p>Was genau will er mir hier sagen? Wo liegt das Problem?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2118857</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2118857</guid><dc:creator><![CDATA[bluepeople12]]></dc:creator><pubDate>Tue, 13 Sep 2011 18:36:07 GMT</pubDate></item><item><title><![CDATA[Reply to Warum kommt der Fehler? on Tue, 13 Sep 2011 18:32:57 GMT]]></title><description><![CDATA[<p>Übersetz mal bitte die Zeilennummern. Wo ist das in deinem Codefragment?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2118860</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2118860</guid><dc:creator><![CDATA[SeppJ]]></dc:creator><pubDate>Tue, 13 Sep 2011 18:32:57 GMT</pubDate></item><item><title><![CDATA[Reply to Warum kommt der Fehler? on Tue, 13 Sep 2011 18:36:31 GMT]]></title><description><![CDATA[<p>Klingt so, als sage ihm DIR nichts.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2118862</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2118862</guid><dc:creator><![CDATA[cvcv]]></dc:creator><pubDate>Tue, 13 Sep 2011 18:36:31 GMT</pubDate></item><item><title><![CDATA[Reply to Warum kommt der Fehler? on Tue, 13 Sep 2011 18:36:44 GMT]]></title><description><![CDATA[<p>Also Zeile fünf oben ist bei mir die 13.<br />
Also die hier:</p>
<pre><code class="language-cpp">struct *dirent dirResult;
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/2118863</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2118863</guid><dc:creator><![CDATA[bluepeople12]]></dc:creator><pubDate>Tue, 13 Sep 2011 18:36:44 GMT</pubDate></item><item><title><![CDATA[Reply to Warum kommt der Fehler? on Tue, 13 Sep 2011 18:38:49 GMT]]></title><description><![CDATA[<p>Hast du windows includiert ? Und für dir sachen gabs auch niocht nen anderen header redir.h oder so , weiß nicht mehr genau</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2118864</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2118864</guid><dc:creator><![CDATA[7xCore]]></dc:creator><pubDate>Tue, 13 Sep 2011 18:38:49 GMT</pubDate></item><item><title><![CDATA[Reply to Warum kommt der Fehler? on Tue, 13 Sep 2011 18:39:48 GMT]]></title><description><![CDATA[<p>Ich arbeite mit Linux.<br />
Und #include &lt;dirent.h&gt; hab ich auch</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2118866</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2118866</guid><dc:creator><![CDATA[bluepeople12]]></dc:creator><pubDate>Tue, 13 Sep 2011 18:39:48 GMT</pubDate></item><item><title><![CDATA[Reply to Warum kommt der Fehler? on Tue, 13 Sep 2011 18:40:51 GMT]]></title><description><![CDATA[<blockquote>
<p>DirReadMain.cpp:13:3: error: expected primary-expression before ‘struct’</p>
</blockquote>
<p>Das kommt weil du das</p>
<pre><code class="language-cpp">struct dirent dirEntry;
</code></pre>
<p>nicht machen kannst , soweit ich weiß.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2118867</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2118867</guid><dc:creator><![CDATA[7xCore]]></dc:creator><pubDate>Tue, 13 Sep 2011 18:40:51 GMT</pubDate></item><item><title><![CDATA[Reply to Warum kommt der Fehler? on Tue, 13 Sep 2011 18:44:52 GMT]]></title><description><![CDATA[<p>Also....</p>
<pre><code class="language-cpp">struct structname {...}
</code></pre>
<p>Du kannst struct keine 2 namen parameter oder was auch immer geben<br />
Deswegen auch das bei dem 2. struct der not declared dirResult fehler</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2118869</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2118869</guid><dc:creator><![CDATA[7xCore]]></dc:creator><pubDate>Tue, 13 Sep 2011 18:44:52 GMT</pubDate></item><item><title><![CDATA[Reply to Warum kommt der Fehler? on Tue, 13 Sep 2011 18:44:57 GMT]]></title><description><![CDATA[<p>Woanders hat das auch problemlos funktioniert ... Diesselben drei Variablen, mit denselben Typen wie in der Funktion. Daran sollte es eigentlich nicht liegen ...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2118870</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2118870</guid><dc:creator><![CDATA[bluepeople12]]></dc:creator><pubDate>Tue, 13 Sep 2011 18:44:57 GMT</pubDate></item><item><title><![CDATA[Reply to Warum kommt der Fehler? on Tue, 13 Sep 2011 18:46:06 GMT]]></title><description><![CDATA[<p>7xCore schrieb:</p>
<blockquote>
<blockquote>
<p>DirReadMain.cpp:13:3: error: expected primary-expression before ‘struct’</p>
</blockquote>
<p>Das kommt weil du das</p>
<pre><code class="language-cpp">struct dirent dirEntry;
</code></pre>
<p>nicht machen kannst , soweit ich weiß.</p>
</blockquote>
<p>Wieso ? Das &quot;struct&quot; ist zwar überflüssig, aber doch nicht falsch ? Ich gehe mal davon aus, dass dieser &quot;dirent&quot;-strukt in &quot;dirent.h&quot; daklariert wird und er nun einfach eine Instanz davon anlegen will ?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2118872</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2118872</guid><dc:creator><![CDATA[cvcv]]></dc:creator><pubDate>Tue, 13 Sep 2011 18:46:06 GMT</pubDate></item><item><title><![CDATA[Reply to Warum kommt der Fehler? on Tue, 13 Sep 2011 18:47:29 GMT]]></title><description><![CDATA[<p>Musst wohl</p>
<pre><code class="language-cpp">struct dirent* dirResult
</code></pre>
<p>schreiben.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2118874</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2118874</guid><dc:creator><![CDATA[cvcv]]></dc:creator><pubDate>Tue, 13 Sep 2011 18:47:29 GMT</pubDate></item><item><title><![CDATA[Reply to Warum kommt der Fehler? on Tue, 13 Sep 2011 18:47:50 GMT]]></title><description><![CDATA[<p><a class="plugin-mentions-user plugin-mentions-a" href="https://www.c-plusplus.net/forum/uid/27901">@7xCore</a>: das struct hab ich aus der Datei dirent.h</p>
<p>Es kommt nicht von mir ...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2118875</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2118875</guid><dc:creator><![CDATA[bluepeople12]]></dc:creator><pubDate>Tue, 13 Sep 2011 18:47:50 GMT</pubDate></item><item><title><![CDATA[Reply to Warum kommt der Fehler? on Tue, 13 Sep 2011 18:48:03 GMT]]></title><description><![CDATA[<p>Hm ...</p>
<blockquote>
<p>DirReadMain.cpp:13:3: error: expected primary-expression before ‘struct’<br />
DirReadMain.cpp:13:3: error: expected ‘;’ before ‘struct’</p>
</blockquote>
<p>Is das dein ganzer code ?Das sieht jetzt so aus als ob du ein &quot;;&quot; irgendwo vergessen hättest , was ich aber nicht erkennen kann.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2118876</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2118876</guid><dc:creator><![CDATA[7xCore]]></dc:creator><pubDate>Tue, 13 Sep 2011 18:48:03 GMT</pubDate></item><item><title><![CDATA[Reply to Warum kommt der Fehler? on Tue, 13 Sep 2011 18:48:48 GMT]]></title><description><![CDATA[<p>Oh ok das hab ich falsch gedeutet mit dem struct.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2118877</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2118877</guid><dc:creator><![CDATA[7xCore]]></dc:creator><pubDate>Tue, 13 Sep 2011 18:48:48 GMT</pubDate></item><item><title><![CDATA[Reply to Warum kommt der Fehler? on Tue, 13 Sep 2011 18:49:10 GMT]]></title><description><![CDATA[<p>cvcv schrieb:</p>
<blockquote>
<p>Musst wohl</p>
<pre><code class="language-cpp">struct dirent* dirResult
</code></pre>
<p>schreiben.</p>
</blockquote>
<p>Das war die Antwort. Jetzt funktionierts ... <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/2118878</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2118878</guid><dc:creator><![CDATA[bluepeople12]]></dc:creator><pubDate>Tue, 13 Sep 2011 18:49:10 GMT</pubDate></item><item><title><![CDATA[Reply to Warum kommt der Fehler? on Tue, 13 Sep 2011 18:50:27 GMT]]></title><description><![CDATA[<p>cvcv schrieb:</p>
<blockquote>
<p>Musst wohl</p>
<pre><code class="language-cpp">struct dirent* dirResult
</code></pre>
<p>schreiben.</p>
</blockquote>
<p>QFT</p>
<p>edit: Zu spät...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2118879</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2118879</guid><dc:creator><![CDATA[SeppJ]]></dc:creator><pubDate>Tue, 13 Sep 2011 18:50:27 GMT</pubDate></item><item><title><![CDATA[Reply to Warum kommt der Fehler? on Wed, 14 Sep 2011 08:03:02 GMT]]></title><description><![CDATA[<p>7xCore schrieb:</p>
<blockquote>
<p>Oh ok das hab ich falsch gedeutet mit dem struct.</p>
</blockquote>
<p>Jup, hast du. <code>struct dirent dirEntry;</code> ist C-Style, macht das Selbe wie in C++ <code>dirent dirEntry;</code> . Funktioniert in C++ aus Kompatibilitätsgründen. Die zweite Version hätte in C nicht funktioniert, für sowas muss man dort immer sowas wie</p>
<pre><code class="language-cpp">struct dirent_ {};
typedef struct dirent_ dirent;

//oder kurz:
typedef struct dirent_
{}
dirent;
</code></pre>
<p>schreiben. Kurz gefasst: structs müssen in C auch immer mit struct benannt werden, typedefs kommen ohne weitere keywords aus.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2119073</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2119073</guid><dc:creator><![CDATA[pumuckl]]></dc:creator><pubDate>Wed, 14 Sep 2011 08:03:02 GMT</pubDate></item></channel></rss>