wert.c
#ifndef STDIO
#include
#define STDIO
#endif
#ifndef CONSTANTEN
#include "constanten.c"
#endif
#ifndef BEZEICHNER
#include "bezeichner.c"
#endif
#ifndef TYPES
#include "types.c"
#endif
datum datensatz[max_attr];
int attribut=0;
void init_ds()
{
int i;
extern datum datensatz[max_attr];
for( i=0; i < max_attr; ++i)
{
strcpy( datensatz[i].w, "\0");
}
attribut=0;
}
void set_attribut(int a)
{
attribut=a;
}
void incert_wert(char *t)
{
int i;
int t_len,w_len;
extern datum datensatz[max_attr];
char *w;
datum *l=&datensatz[attribut];
/*
while(l->next != NULL)
l=l->next;
*/
t_len=strlen(t);
w_len=strlen(l->w);
w=l->w;
for(i=0; i <= t_len; ++i)
{
if(w_len < max_buf_len-2)
{
l->w[w_len]=*(t+i);
++w_len;
}
else
{
l->w[w_len]='\0';
if(( l->next=w_malloc()) == NULL)
{
exit(KEIN_MEMORY);
}
else
{
l=l->next;
w=l->w;
w_len=0;
w[w_len]=*(t+i);
++w_len;
}
}
}
}
void delete_ds()
{
int i;
datum *p;
extern datum datensatz[max_attr];
for( i=0; i < max_attr; ++i)
{
p=datensatz[i].next;
while(p != NULL)
p=w_mfree(p);
}
init_ds();
}
void print_ds()
{
int i;
int last = max_attr;
extern datum datensatz[max_attr];
last=last_bez();
for( i=0; i < last; ++i)
{
if( datensatz[i].w[0] =='\0')
{
strcat(datensatz[i].w, LEER);
if(i < (last-1))
strcat(datensatz[i].w, PIPE);
}
}
for( i=0; i < max_attr; ++i)
{
fprintf( stdout, "%s", datensatz[i].w);
}
}
#define WERT
CSLIB 2000
Zurück: Persönliche Hypertexte