Untitled
unknown
plain_text
2 years ago
1.3 kB
6
Indexable
#include "token.h"
#include <stdio.h>
#include <stdlib.h>
// Предполагается, что функция tokenize и структура Token уже определены
int main() {
const char* expression = "3 + 4.5 * 2 - (1 / 2)"; // Пример выражения для разбора
int tokenCount = 0;
Token* tokens = tokenize(expression, &tokenCount); // Вызов функции разбора строки
if (tokens == NULL) {
printf("Error tokenizing expression.\n");
return 1;
}
printf("Tokens:\n");
for (int i = 0; i < tokenCount; ++i) {
switch (tokens[i].type) {
case TOKEN_NUMBER:
printf("Number: %f\n", tokens[i].value);
break;
case TOKEN_OPERATOR:
printf("Operator: %c\n", tokens[i].op);
break;
case TOKEN_LPAREN:
printf("Left Parenthesis\n");
break;
case TOKEN_RPAREN:
printf("Right Parenthesis\n");
break;
default:
printf("Unknown token type\n");
}
}
free(tokens); // Освобождение выделенной памяти для токенов
return 0;
}
Editor is loading...
Leave a Comment