c = fgetwc(source); // lecture du premier caractere
do {
scanner();
- if (tokenType == MOT || tokenType == MOTCLE) {
- fwprintf(target, L"%20s: %ls\n", tokenTypestr[tokenType], token[tokenFound].value);
- } else {
- fwprintf(target, L"%20s\n", tokenTypestr[tokenType]);
- }
+ wprint_token();
token[tokenFound].type = tokenTypestr[tokenType];
tokenFound++;
} while (tokenType != FIN); // tant que la fin du fichier n'est pas atteinte
void do_syntactic_analysis() {
c = fgetwc(source); // lecture du premier caractere
- do {
- analyze_AXIOME();
- } while (tokenType != FIN);
+ analyze_AXIOME();
}
void print_usage(const char* name) {
// Ouvre le fichier source en lecture seulement (le fichier doit exister) :
source = fopen(in_file, "r+");
if (source == NULL) {
- pr_error("Impossible d'ouvrir le fichier %s\n", in_file);
+ pr_error("Fail to open file %s\n", in_file);
return EXIT_FAILURE;
}
} else {
// avec suppression du contenu au prealable :
target = fopen(out_file, "w+");
if (target == NULL) {
- pr_error("Impossible d'ouvrir le fichier %s\n", out_file);
+ pr_error("Fail to open file %s\n", out_file);
return EXIT_FAILURE;
}
} else {