我试图用C语言编写一个程序,该程序接收文件,读取每一行并分离每个单词作为标记。我读到strtok()
可以满足我的要求,因此我按以下顺序使用了3个阶段:分离新行,制表符和空白。
但是发生的是,当我尝试打印每个字符串时,都缺少了一些。
void pre_proces(const char **op, FILE *arq){
char linha[200];
int num_linha = 1;
while(!feof(arq)){
fgets(linha, 200, arq);
char *expressao = strtok(linha, "\n");
while(expressao){
strupr(expressao);
char *sem_tab = strtok(expressao, "\t");
while(sem_tab){
char *token = strtok(sem_tab, " ");
while(token){
printf("%s\n", token);
token = strtok(NULL, " ");
}
//printf("%s\n", sem_tab);
sem_tab = strtok(NULL, "\t");
}
//printf("%s\n", expressao);
expressao = strtok(NULL, "\n");
}
num_linha++;
}
}
The file that I want to detach is this one
那些大空白是多个选项卡。
是什么使某些弦消失了?