0

我一直在尝试解决扩展 ASCII 的问题。我有一个程序可以读取文本文件并提取单词。问题是文本可能是带有重音的语言。

我阅读了很多关于与扩展 ASCII 相关的问题的信息。但是,我没有给出允许我仅使用标准库来解决问题的示例或信息。

我的程序应该能够读取文本文件(程序已经这样做了)并删除可能包含重音的单词,将各种图形分数丢弃为¿¡等。另外,我读到您应该使用unsigned char并因此能够捕获从 0 到 256 编码的任何字符。但是,该实现也不适用于 unsigned char。

void readFileChar(FILE* file, tDictionary *dictionary) {
    char buffer[100];
    unsigned char c;
    int index = 0;

    if (file == NULL) {
        printf("Error\n");
        exit(1);
    }

    c = fgetc(file);
    while(feof(file) == 0) {
        if ((!ispunct(c)) && (!isspace(c)) && (isalpha(c)))){
            buffer[index] = c;
            index++;
        }else{
            buffer[index] = '\0';
            if(strlen(buffer) != 0){
                printf("**************\n");
                printf("%s\n", buffer);
                index = 0;
            }
        }
        c = fgetc(file);
    }
    fclose(file);
}

我正在使用 fgetc 函数逐个字符地收集。问题是程序却丢弃了重音字母í、ç、ê、ô等项目,所以你不应该花太多的钱。

有没有人有在解释的条件下运行的推荐或示例程序?

4

0 回答 0