<?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[Absturz beim Aufruf der Funktion filelength() bei open()]]></title><description><![CDATA[<p>Guten Abend zusammen.<br />
Ich bin mal wieder etwas am Programmieren und bin verzweifelt.<br />
Ich möchte die Größe aller Dateien in einem Ordner auslesen. Dies wollte ich mit der Funktion open() und filelength() machen die ich hier gefunden habe<br />
<a href="http://www.c-plusplus.net/forum/255898" rel="nofollow">http://www.c-plusplus.net/forum/255898</a></p>
<p>Hier mal der für mich interessante Teil:</p>
<pre><code class="language-cpp">int file = open(argv[1], O_RDONLY), filesize = filelength(file);
printf(&quot;%d\n&quot;, filesize);
close(file);
</code></pre>
<p>Das Problem ist nun, dass es immer Abstürzt sobald ich die Länge ermitteln will.</p>
<pre><code class="language-cpp">int filesize = filelength(file);
</code></pre>
<p>Mein Verdacht ist das er vom Ordner &quot;/..&quot; nicht die Größe bestimmen kann und deshalb abstürzt. Sonst kann ich es mir nicht erklären.<br />
Das System mit dem ich arbeite ich Windows 7.</p>
<p>Ich hoffe das mir mal einer Licht ins dunkel bringen kann.</p>
<p>Edit: Welchen Rückgabewert hat die Datei wenn sie geöffnet werden konnte bzw wenn sie nicht geöffnet werden konnte?</p>
<p>Guß Andyman</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/292177/absturz-beim-aufruf-der-funktion-filelength-bei-open</link><generator>RSS for Node</generator><lastBuildDate>Mon, 17 Aug 2026 03:54:35 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/292177.rss" rel="self" type="application/rss+xml"/><pubDate>Sun, 04 Sep 2011 17:19:42 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Absturz beim Aufruf der Funktion filelength() bei open() on Sun, 04 Sep 2011 17:31:51 GMT]]></title><description><![CDATA[<p>Guten Abend zusammen.<br />
Ich bin mal wieder etwas am Programmieren und bin verzweifelt.<br />
Ich möchte die Größe aller Dateien in einem Ordner auslesen. Dies wollte ich mit der Funktion open() und filelength() machen die ich hier gefunden habe<br />
<a href="http://www.c-plusplus.net/forum/255898" rel="nofollow">http://www.c-plusplus.net/forum/255898</a></p>
<p>Hier mal der für mich interessante Teil:</p>
<pre><code class="language-cpp">int file = open(argv[1], O_RDONLY), filesize = filelength(file);
printf(&quot;%d\n&quot;, filesize);
close(file);
</code></pre>
<p>Das Problem ist nun, dass es immer Abstürzt sobald ich die Länge ermitteln will.</p>
<pre><code class="language-cpp">int filesize = filelength(file);
</code></pre>
<p>Mein Verdacht ist das er vom Ordner &quot;/..&quot; nicht die Größe bestimmen kann und deshalb abstürzt. Sonst kann ich es mir nicht erklären.<br />
Das System mit dem ich arbeite ich Windows 7.</p>
<p>Ich hoffe das mir mal einer Licht ins dunkel bringen kann.</p>
<p>Edit: Welchen Rückgabewert hat die Datei wenn sie geöffnet werden konnte bzw wenn sie nicht geöffnet werden konnte?</p>
<p>Guß Andyman</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2114803</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2114803</guid><dc:creator><![CDATA[Andyman]]></dc:creator><pubDate>Sun, 04 Sep 2011 17:31:51 GMT</pubDate></item><item><title><![CDATA[Reply to Absturz beim Aufruf der Funktion filelength() bei open() on Sun, 04 Sep 2011 17:31:45 GMT]]></title><description><![CDATA[<p>Das ist weder Standard C++ noch C.<br />
Willst du in C oder C++ programmieren? Oder etwas anderes?</p>
<p>Grüssli</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2114806</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2114806</guid><dc:creator><![CDATA[Dravere]]></dc:creator><pubDate>Sun, 04 Sep 2011 17:31:45 GMT</pubDate></item><item><title><![CDATA[Reply to Absturz beim Aufruf der Funktion filelength() bei open() on Sun, 04 Sep 2011 17:32:52 GMT]]></title><description><![CDATA[<p>Ich habe vor in C++ zu programmieren.<br />
Etwas anderes habe ich in der kurzen Zeit nicht gefunden deshalb wollte ich mich daran versuchen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2114807</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2114807</guid><dc:creator><![CDATA[Andyman]]></dc:creator><pubDate>Sun, 04 Sep 2011 17:32:52 GMT</pubDate></item><item><title><![CDATA[Reply to Absturz beim Aufruf der Funktion filelength() bei open() on Sun, 04 Sep 2011 18:50:00 GMT]]></title><description><![CDATA[<p>Für Windows:</p>
<pre><code class="language-cpp">#include &lt;Windows.h&gt;

void showFiles(const char *path)
{
  WIN32_FIND_DATA filedata;
  HANDLE hFind = FindFirstFile(path, &amp;filedata);
  if (hFind != INVALID_HANDLE_VALUE)
  {
    do {
      if (filedata.dwFileAttributes &amp; ~FILE_ATTRIBUTE_DIRECTORY)
      {
        printf(&quot;File: %s, size: %llu\n&quot;, filedata.cFileName, 
          ((unsigned long long)filedata.nFileSizeHigh * (MAXDWORD+1)) + filedata.nFileSizeLow);
      }
    } while (FindNextFile(hFind, &amp;filedata));
  }
}

int main() 
{
  showFiles(&quot;*&quot;);
  return 0;
}
</code></pre>
<p><a href="http://msdn.microsoft.com/en-us/library/aa364418%28v=vs.85%29.aspx" rel="nofollow">http://msdn.microsoft.com/en-us/library/aa364418(v=vs.85).aspx</a><br />
Ich glaube mit Standard-C++ kann man sich nicht alle Dateien auflisten lassen. (Edit: Man könnte vielleicht alle Namen durchtesten. <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f921.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--clown_face"
      title=":clown:"
      alt="🤡"
    /> )</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2114837</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2114837</guid><dc:creator><![CDATA[cooky451]]></dc:creator><pubDate>Sun, 04 Sep 2011 18:50:00 GMT</pubDate></item></channel></rss>