файле разрешены однострочные комментарии(выделяются символом #) и многострочные(выделяются {})с чтением могострочных комментариев и возникла проблема тк коментарий внутри может содержать символы { }например{xxxxxxx}aaaaa}более менее рабочий вариант
if(c=='{') incomment=1;но } проигнорироваать не удается и она при дальнейшем чтении приписывается к команде идущей после коментария }in x почему не гнорируется я понимаю но как исправить не знаю помогите. и 2) инструкция in x используется для ввода с клавиатуры число в регистр х в 7ой системе та вот если я ввиду слишком большое число как понять что произойдет переполнение регистра в 32бита?
if(!isspace©&&!incomment&&c!=EOF) *ic++=c;
if(c=='}')
incomment=0;
int inx(void)вот ф.я для in x.
{
x=0;
er=0;
count=0;
do
{
count++;
if(er==1)Error(4,"");
else if(er==2)Error(5,"");
else if(er==3)Error(6,wbuf);
else if(er==4)exit(Error(7,wbuf));
er=0;
printf("%c=",ar1);
gets(wbuf);
if(!wbuf)er=1;
else if(strlen(wbuf)>12)er=2;
else
{
wb=wbuf-1;
while(*++wb)
{
if(*wb<'0'||*wb>'6')
{
system("cls");
er=3;
break;
}
x=x*7+(*wb-'0');
if(ltoa(x)>ltoa){er=4;break;}
}
}
system("cls");
if(count>3)exit(Error(8,""));
}
while(er);
R1=x;
fprintf(ft," %c=%d\n",ar1,x);
fprintf(fo,"%c=%d\n",ar1,x);
x=0;
return 0;
}
Прикрепляю полностью всю программу