File: test83.c

package info (click to toggle)
libtpl 1.5-2
  • links: PTS
  • area: main
  • in suites: squeeze, wheezy
  • size: 4,284 kB
  • ctags: 748
  • sloc: sh: 10,059; ansic: 5,644; perl: 1,062; makefile: 119; cpp: 32
file content (42 lines) | stat: -rwxr-xr-x 817 bytes parent folder | download | duplicates (4)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
#include <stdio.h>
#include "tpl.h"

#define ILEN 10
#define KLEN 8
#define FLEN 5

struct st {
    char c;
    double f[FLEN];
};

int main() {
    tpl_node *tn;
    /* some meaningless test data */
    struct st s;
    int j; 
    int i[ILEN];
    int k[KLEN];
    char a;
    char b;

    tn = tpl_map("cA(i#)S(cf#)A(ci#)", &a, i, ILEN, &s, FLEN, &b, k, KLEN);
    tpl_load(tn,TPL_FILE,"/tmp/test82.tpl");

    tpl_unpack(tn,0);
    printf("%c %c %.2f %.2f %.2f %.2f %.2f \n", a, s.c, s.f[0], s.f[1], s.f[2], s.f[3], s.f[4]);

    while( tpl_unpack(tn,1) > 0) {
        for(j=0;j<ILEN;j++) printf("%d ", i[j]);
        printf("\n");
    }

    while( tpl_unpack(tn,2) > 0) {
        printf("%c ", b);
        for(j=0;j<KLEN;j++) printf("%d ", k[j]);
        printf("\n");
    }

    tpl_free(tn);
    return(0);
}