使用exe在C中进行I / O重定向

时间:2015-09-30 00:01:27

标签: c++ c redirect io

这是我的代码:

#include<stdio.h>

int main()
{
    int a = '\0';

    while ((a = getchar()) != EOF){
        if (a != ' ' || a != '\t' || a != '\n' || a != ';' || a != ',' || a != '.'){
            putchar(a);
        }
        else{
            continue;
        }
    }

    system("pause");
    return 0;
}

我需要从输入文件中读一首诗,并输出没有空格或标点符号的诗。必须使用I / O变体来完成。我已经搜遍了所有人,但我似乎无法按照我的需要找到如何做到这一点。非常感谢任何帮助...

1 个答案:

答案 0 :(得分:-1)

希望这能解决您的问题。使用字符的ascii值。还可以使用fgetc / fputc / fscanf / fprintf等进行文件i / o相关操作。 ASCII CHART链接在这里ASCII Chart VALUES

#include<stdio.h>


int main()
{
 FILE *pfile=NULL;
 char data[255];
 int i=0;

 pfile=fopen("poem.txt","r");

 while((data[i]=fgetc(pfile)) != EOF)
 {

   if(data[i]> 32 && data[i] < 123)
   {
     if(data[i] != 44 && data[i]!= 45 && data[i]!=46 && data[i]!=33)
     {
       //In the above 'if statement' you can add more characters/special
       //characters you wish to exclude/ignore
       printf("%c",data[i]);
       i++;
     }
   }

}
 return 0;
}