Your Browser is not longer supported
Please use Google Chrome, Mozilla Firefox or Microsoft Edge to view the page correctly
Loading...
{{viewport.spaceProperty.prod}}
tell - Aktuelle Position des Lese-/Schreibzeigers ermitteln
&pagelevel(4)&pagelevel
Definition | #include <stdio.h> long tell(int dk); tell liefert die aktuelle Position des Lese-/Schreibzeigers für die Datei mit Dateikennzahl dk.
tell lässt sich auf Binärdateien (PAM, INCORE) und Textdateien (SAM, ISAM) anwenden. SAM-Dateien werden mit elementaren Funktionen stets als Textdateien verarbeitet.
|
Returnwert | Position in der Datei bei Erfolg, und zwar |
|
| bei Binärdateien die Anzahl Bytes, die der Lese-/Schreibzeiger vom Dateianfang entfernt ist, bei Textdateien die absolute Position des Lese-/Schreibzeigers.x |
| -1 | im Fehlerfall. Zusätzlich wird in errno eine entsprechende Fehlerinformation abgelegt (z.B. tell nicht erlaubt, Block/Satzanzahl zu groß). |
Hinweise | Die Aufrufe tell(dk) und lseek(dk, 0L, SEEK_CUR) sind äquivalent. tell ist nicht anwendbar für Systemdateien (SYSDTA, SYSLST, SYSOUT).
Da die Informationen über die Dateiposition in einem 4 Byte langen Feld abgelegt werden, ergeben sich für die Größe von SAM- und ISAM-Dateien folgende Einschränkungen bei der Bearbeitung mit tell/lseek : SAM-Datei Satzlänge | <= 2048 Byte | Satzanzahl/Block | <= 256 | Blockanzahl | <= 2048 | ISAM-Datei Satzlänge | <= 32 KByte | Satzanzahl | <= 32 K |
|
Beispiel | siehe Beispiel bei lseek . |
Siehe auch | lseek, lseek64, fseek, fseek64, ftell, ftell64 |