Слияние кода завершено, страница обновится автоматически
#ifndef ONELINETEMPLATE_H
#define ONELINETEMPLATE_H
#define CONSTTEXTLEN 256
typedef enum {
DATATYPE_CONSTTEXT,
DATATYPE_VARINDEX
} OneLineTemplateDataType;
typedef struct OneLineTemplate {
OneLineTemplateDataType dataType;
union
{
struct
{
size_t varIndex; //1 is the first valid varIndex, 0 is reserve for undefined var
char varName[CONSTTEXTLEN-4];
}var;
char constText[CONSTTEXTLEN];
}data;
struct OneLineTemplate *next;
} OneLineTemplate;
typedef struct {
const char *varName;
char varValue[128];
}SymTable;
OneLineTemplate* OneLineTemplateCreate(const char* text, const SymTable *symTable, size_t symTableLen);
void OneLineTemplateRelase(OneLineTemplate *tpl);
int OneLineTemplateExpand(const OneLineTemplate *tpl, const SymTable *symTable, size_t symTableLen, char *expandText, size_t expandTextLen);
int OneLineTemplateVarify(const OneLineTemplate *tpl, const SymTable *symTable, size_t symTableLen, const char *text);
#endif /* end of include guard: ONELINETEMPLATE_H */
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Опубликовать ( 0 )