mirror of
https://github.com/troydhanson/tpl.git
synced 2024-12-27 16:11:02 +08:00
39 lines
694 B
C
39 lines
694 B
C
#include "tpl.h"
|
|
#include <stdio.h>
|
|
#include <string.h>
|
|
|
|
typedef struct {
|
|
int i;
|
|
char c[4];
|
|
} test_t;
|
|
|
|
const char *filename = "/tmp/test107.tpl";
|
|
|
|
int main() {
|
|
test_t s[5], t[5];
|
|
tpl_node *tn;
|
|
int i;
|
|
|
|
s[0].i = 0; strcpy(s[0].c, "cat");
|
|
s[1].i = 1; strcpy(s[1].c, "dog");
|
|
s[2].i = 2; strcpy(s[2].c, "eel");
|
|
s[3].i = 3; strcpy(s[3].c, "emu");
|
|
s[4].i = 4; strcpy(s[4].c, "ant");
|
|
|
|
tn = tpl_map("S(ic#)#", &s, 4, 5);
|
|
tpl_pack(tn,0);
|
|
tpl_dump(tn,TPL_FILE,filename);
|
|
tpl_free(tn);
|
|
|
|
tn = tpl_map("S(ic#)#", &t, 4, 5);
|
|
tpl_load(tn,TPL_FILE,filename);
|
|
tpl_unpack(tn,0);
|
|
tpl_free(tn);
|
|
|
|
for(i=0; i < 5; i++) {
|
|
printf("%d %s\n", s[i].i, s[i].c);
|
|
}
|
|
|
|
return 0;
|
|
}
|