AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Sonstige Fragen zu Delphi Delphi Fehler bei TFileStream.ReadBuffer mit Buffer size

Fehler bei TFileStream.ReadBuffer mit Buffer size

Ein Thema von XoRiC · begonnen am 2. Jul 2010 · letzter Beitrag vom 2. Jul 2010
Antwort Antwort
XoRiC

Registriert seit: 20. Sep 2005
43 Beiträge
 
RAD-Studio 2009 Arc
 
#1

AW: Fehler bei TFileStream.ReadBuffer mit Buffer size

  Alt 2. Jul 2010, 08:52
Hallo ihr drei!

Durch die kleine Änderung im Code funktioniert es jetzt einwandfrei.

Bisher hatte ich tatsächlich nur statische Arrays verwendet und habe mit FS.ReadBuffer(buf, sizeof(buf)); nie Probleme bekommen.
Warum das so ist, hab ich dank euch jetzt verstanden.
In Zukunft werde ich mir also FS.ReadBuffer(buf[0], sizeof(buf)); angewöhnen.

Vielen Dank an euch Deep-Sea, sx2008 und himitsu für die umfangreiche Erklärung :)

Ein schönes Wochenende!
Gruß Xoric
"Gods are fragile things; they may be killed by a whiff of science or a dose of common sense."
- Chapman Cohen
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.374 Beiträge
 
Delphi 12 Athens
 
#2

AW: Fehler bei TFileStream.ReadBuffer mit Buffer size

  Alt 2. Jul 2010, 09:14
Was Deep-Sea noch meinte war das:
FS.ReadBuffer(buf[Low(buf)], ...) .

Das nimmt sich dann immer den Anfang des Arrays, egal wie es definiert ist.


Aber ich schreibe auch fast immer die [0] hin, da es sich sowieso besser macht,
Arrays einheitlich zu deklarieren.

(nur bei einigen Sonderfällten macht sich ein einfacher Array-Anfang manchmal besser ... bei mir sind das z.B. Arrays, welche paralell zu Strings verarbeitet werden, welche dann mit [1..] beginnen, damit auch da die Zählung einheitlich ist)
Ein Therapeut entspricht 1024 Gigapeut.

Geändert von himitsu ( 2. Jul 2010 um 09:17 Uhr)
  Mit Zitat antworten Zitat
gammatester

Registriert seit: 6. Dez 2005
999 Beiträge
 
#3

AW: Fehler bei TFileStream.ReadBuffer mit Buffer size

  Alt 2. Jul 2010, 10:09
In Zukunft werde ich mir also FS.ReadBuffer(buf[0], sizeof(buf)); angewöhnen.
Na hoffentlich nicht! sizeof(buf) ist nämlich immer = 4!. Besser ist FS.ReadBuffer(buf[0], length(buf)*sizeof(buf[0])) .
  Mit Zitat antworten Zitat
XoRiC

Registriert seit: 20. Sep 2005
43 Beiträge
 
RAD-Studio 2009 Arc
 
#4

AW: Fehler bei TFileStream.ReadBuffer mit Buffer size

  Alt 2. Jul 2010, 14:55
Oh richtig
Bei dynamischen Arrays ist das ja die Größe des Pointers.
Ich hab die Größe des Buffers sowieso wie oben immer in einer Variable abgelegt.

Danke für den Hinweis gammatester!
"Gods are fragile things; they may be killed by a whiff of science or a dose of common sense."
- Chapman Cohen
  Mit Zitat antworten Zitat
Antwort Antwort

Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:25 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz