У меня есть этот токен в моем файле .lex:
[a-zA-Z0-9]+ { yylval = yytext; return ALPHANUM; }
и этот код в моем файле .y:
Sentence: "Sphere(" ALPHANUM ")."
{
FILE* file = fopen("C:/test.txt", "a+");
char st1[] = "polySphere -name ";
strcat(st1, $2);
strcat(st1, ";");
fprintf(file,"%s", st1);
fclose(file);
}
Я получаю эту ошибку, когда пытаюсь скомпилировать:
предупреждение: передача аргумента 2 из «strcat» делает указатель из целого числа без приведения
Итак, $2 — это int, как мне сделать его строкой?
Например: "Сфера(worldGlobe)". Я хочу, чтобы $2 имел здесь строковое значение worldGlobe.
Спасибо за любую помощь
#define YYSTYPE char*
в прологовой части файла .y. - person MtnViewJohn   schedule 26.12.2011