| MF_setWriteFormat
| MD_setWriteFormat |
ME_setWriteFormat |
| MCF_setWriteFormat |
MCD_setWriteFormat |
MCE_setWriteFormat |
|
| Funktion | Definition des Ausgabeformats für M?_write: nur C/C++ ! |
|
| Syntax C/C++ | #include <MFstd.h>
void MF_setWriteFormat( char *FormatString ); |
| C++ MatObj | #include <OptiVec.h>
void matrix<T>::setWriteFormat( char *FormatString ); |
| Pascal/Delphi | Diese Funktionen existieren nicht. |
|
| Beschreibung | Diese Funktionen sind identisch mit der VF_setWriteFormat-Familie.
Das Zahlenformat der von M?_write geschriebenen Matrix-Elemente kann mit deser Funktion modifiziert werden. Sollen von M?_write geschriebene Zahlen irgendwann wieder eingelesen werden, dann sei man sich der Beschränkungen der M?_read-Funktionen bewußt: Nicht alle Formate, die man für die Ausgabe wählen kann, können hinterher korrekt gelesen werden.
MF_setWriteFormat sollte nicht für die Definition von Whitespace zwischen den Spalten eingesetzt werden. Dies ist vielmehr die Aufgabe von MF_setWriteSeparate.
Die folgende Tabelle faßt die für die verschiedenen Datentypen verwendeten Formate zusammen. Die letzte Spalte gibt die maximale Länge des Format-Strings an.
| Version | Standard-Format | Alternativ-Beispiel | max. Länge |
| MF_ | "% 11.8e" | "% 8.4f" | 16 |
| MD_ | "% 19.16le" | "% 16.8lf" | 16 |
| ME_ | "% 22.19Le" | "% 22.19LG" | 16 |
| MCF_ | "% 11.8e, % 11.8e" | "{% 8.4f, % 8.4f}" | 32 |
| MCD_ | "% 19.16le, % 19.16le" | "{% 19.16lE % 19.16lE}" | 32 |
| MCE_ | "% 22.19Le, % 22.19Le" | "{% 22.19Lg % 22.19Lg}" | 32 |
|
|
| Fehlerbehandlung | Format-Strings, deren Länge das in der obigen Tabelle angegebene Maximum übersteigt, führen zu einem Programm-Abbruch mit der Fehlermeldung "Invalid Parameter(s)".
Der eigentliche Inhalt des Format-Strings wird dagegen nicht überprüft. Man muss sich also vorsehen, nur für den jeweiligen Datentyp zulässige Formate zu spezifizieren. |
|
|