My program translates regular lexical expressions in DNF.
Faced with the problem of incorrect reading of the input string
The symbol "!" it recognize as a "(" and "*" causes segmentation fault

I have no idea why it happens, I can't find any error in my code

Thank you very much!
To start write in the terminal:
make
./DNF <test.txt...