#ifndef CSTRING
#define CSTRING
#include "mem.h"
#include <stdio.h>
#include <string.h>
#define cstring char*
cstring strdupl(cstring s);
cint strsum(cstring s);
cint str2float(cstring s);
cstring float2str(cfloat f);
cint str2int(cstring s);
cstring int2str(cint i);

#define cstring_lookup_char(str, pos) ((char*)(str))[pos]
#define cstring_mem_malloc(len) mem_malloc(len)
#define cstring_mem_free(len) mem_free(len)
#define cstring_strcmp(str1, str2) strcmp((char*)str1, (char*)str2)
#define cstring_strdupl(str) strdupl((char*)str)
#define cstring_strlen(str) strlen((char*)str)
#define cstring_strlwr(str) strlwr((char*)str)
#define cstring_strsum(str) strsum((char*)str)
#define cstring_strupr(str) strupr((char*)str)
#define cstring_str2float(str) str2float((char*)str)
#define cstring_float2str(f) float2str((float)f)
#define cstring_str2int(str) str2int((char*)str)
#define cstring_int2str(i) int2str(i)
#define cstring_strchr(str, ch) strchr((char*)str, (char)ch)
#define cstring_update_char(str, pos, ch) ((char*)(str))[pos] = ch
#endif
