storing_20structures_20in_20files
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revision | |||
storing_20structures_20in_20files [2024/01/12 22:23] – Added BBCSDL code richardrussell | storing_20structures_20in_20files [2024/01/12 22:46] (current) – Add generic code (e.g. for BBCTTY) richardrussell | ||
---|---|---|---|
Line 4: | Line 4: | ||
BB4W: | BB4W: | ||
<code bb4w> | <code bb4w> | ||
- | | + | |
</ | </ | ||
BBCSDL: | BBCSDL: | ||
<code bb4w> | <code bb4w> | ||
- | | + | |
+ | </ | ||
+ | Generic (e.g. BBCTTY): | ||
+ | <code bb4w> | ||
+ | DEF PROCwritestruct(F%, | ||
+ | LOCAL s$ : PTR(s$)=s{} : !(^s$+4)=DIM(s{}) : BPUT#F%,s$; : !(^s$+4)=0 | ||
+ | ENDPROC | ||
</ | </ | ||
Similarly to read an entire structure **struct{}** from the file opened on channel **file%** do the following: | Similarly to read an entire structure **struct{}** from the file opened on channel **file%** do the following: | ||
BB4W: | BB4W: | ||
<code bb4w> | <code bb4w> | ||
- | | + | |
</ | </ | ||
BBCSDL: | BBCSDL: | ||
<code bb4w> | <code bb4w> | ||
- | | + | |
+ | </ | ||
+ | Generic (e.g. BBCTTY): | ||
+ | <code bb4w> | ||
+ | DEF PROCreadstruct(F%, | ||
+ | LOCAL s$ : PTR(s$)=s{} : !(^s$+4)=DIM(s{}) : s$=GET$#F% BY LENs$ : !(^s$+4)=0 | ||
+ | ENDPROC | ||
</ | </ | ||
It is best not to mix these statements with conventional BASIC file reads and writes, but if you do you must flush BASIC' | It is best not to mix these statements with conventional BASIC file reads and writes, but if you do you must flush BASIC' |
storing_20structures_20in_20files.txt · Last modified: 2024/01/12 22:46 by richardrussell