Note that there are some explanatory texts on larger screens.

plurals
  1. POStore struct to file and retrieve it again
    primarykey
    data
    text
    <p>I have a struct as </p> <pre><code>typedef struct esl_sqfile_s { FILE *fp; /* Open file ptr */ char *filename; /* Name of file (for diagnostics) */ int do_gzip; /* TRUE if we're reading from gzip -dc pipe */ int do_stdin; /* TRUE if we're reading from stdin */ char errbuf[eslERRBUFSIZE];/* parse error mesg. Size must match msa.h */ /* all input first gets buffered in memory; this gives us enough * recall to use Guess*() functions even in nonrewindable streams */ char *mem; /* buffered input */ int allocm; /* &lt;mem&gt; size, multiples of eslREADBUFSIZE */ int mn; /* number of chars in &lt;mem&gt; (up to allocm) */ int mpos; /* pos of next &lt;buf&gt; to load from &lt;mem&gt; */ off_t moff; /* disk offset to start of &lt;mem&gt; */ int is_recording; /* TRUE if we need to keep buffering more */ /* input is either character-based [fread()] or line-based (esl_fgets())*/ char *buf; /* buffer for fread() or fgets() input */ off_t boff; /* disk offset to start of buffer */ int balloc; /* allocated size of buf */ int nc; /* #chars in buf (usually full, less at EOF)*/ int bpos; /* current position in the buffer (0..nc-1) */ int64_t L; /* #residues seen so far in current seq */ int64_t linenumber; /* What line of the file (1..N; -1=unknown)*/ off_t bookmark_offset; /* bookmark fwd position before reversing...*/ int64_t bookmark_linenum; /* in both linenumber and disk offset */ /* In digital mode, we have an alphabet ptr */ int do_digital; /* TRUE if we're reading in digital mode */ #if defined(eslAUGMENT_ALPHABET) const ESL_ALPHABET *abc; #else void *abc; #endif /* Format-specific configuration */ int format; /* Format code of this file */ int is_linebased; /* TRUE for fgets() parsers; FALSE for fread() */ int eof_is_ok; /* TRUE if record can end on EOF */ int (*parse_header)(struct esl_sqfile_s *, ESL_SQ *sq); int (*parse_end) (struct esl_sqfile_s *, ESL_SQ *sq); ESL_DSQ inmap[128]; /* an input map, 0..127 */ /* MSA augmentation confers reading MSA files as sequential seq files. */ #if defined(eslAUGMENT_MSA) ESL_MSAFILE *afp; /* open ESL_MSAFILE for reading */ ESL_MSA *msa; /* preloaded alignment to draw seqs from */ int idx; /* index of next seq to return, 0..nseq-1 */ #else void *afp; /* NULL */ void *msa; /* NULL */ int idx; /* 0 */ #endif /*eslAUGMENT_MSA*/ /* SSI augmentation confers random access of records in a seq file */ char *ssifile; /* path to expected SSI index file */ int rpl; /* residues per line in file; -1=unset 0=inval*/ int bpl; /* bytes per line in file; -1=unset, 0=inval */ int currpl; /* residues on current line (-1=unknown) */ int curbpl; /* bytes on current line (-1=unknown) */ int prvrpl; /* residues on previous line */ int prvbpl; /* bytes on previous line */ #if defined(eslAUGMENT_SSI) ESL_SSI *ssi; /* open ESL_SSI index, or NULL if none */ #else void *ssi; /* NULL */ #endif /*eslAUGMENT_SSI*/ } ESL_SQFILE; </code></pre> <p>I want to store the struct value into file and read it when needed. The problem that if I write the whole struct some values will contain an address rather than value. is there any solution for this problem</p>
    singulars
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload