struct {
unsigned char *label;
unsigned char *string;
} variable;

 変数名label と 内容string を別々の文字列で保存して、
ソレが数字か文字かはプログラムで対処・・・ダメ?