Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/c/64.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C 通过终端输入/输出带有代码干扰问题_C_File_Io_File Handling - Fatal编程技术网

C 通过终端输入/输出带有代码干扰问题

C 通过终端输入/输出带有代码干扰问题,c,file,io,file-handling,C,File,Io,File Handling,在我开始提问之前,我想宣布几件事:- 这不是此网站上已有问题的副本。 在类似的行中碰巧有一个问题,但是,我仍然不理解“确切地”输入输出是如何完成的。如中所述,回答者说代码 int main(int argc, int argv**) { } 然而,在网站上发布的解决方案中,甚至没有使用。这个问题就是一个例子。(说方言。我确实使用ubuntu终端,并试着按照指示进行操作。结果表明,我的输出文件中没有写入任何内容。我是否可以更好地进行指导,如何实现这一点。这不是我已经做过的作业。我只需要知道如何在

在我开始提问之前,我想宣布几件事:- 这不是此网站上已有问题的副本。 在类似的行中碰巧有一个问题,但是,我仍然不理解“确切地”输入输出是如何完成的。如中所述,回答者说代码

int main(int argc, int argv**)
{
}
然而,在网站上发布的解决方案中,甚至没有使用。这个问题就是一个例子。(说方言。我确实使用ubuntu终端,并试着按照指示进行操作。结果表明,我的输出文件中没有写入任何内容。我是否可以更好地进行指导,如何实现这一点。这不是我已经做过的作业。我只需要知道如何在linux终端中进行输入输出

我还提供了我的代码:-

#include <stdlib.h>
#include <stdio.h>
#include <math.h>
#include <string.h>

#define DEBUG 1
#define printd if (DEBUG) printf

char cipher[26] =     {'y', 'h', 'e', 's', 'o', 'c', 'v', 'x', 'd', 'u', 'i', 'g', 'l', 'b', 'k', 'r', 'z', 't', 'n', 'w', 'j', 'p', 'f', 'm', 'a', 'q'};  

int main()
{
  int count, j;
  scanf("%d\n", &count);
  for (j=0;j<count;j++)
  {
    printf("Case #%d: ",j+1);
    translate();
    printf("\n");
  }
}
void translate()
{
  char c;
  scanf("%c", &c);
  while (c != '\n')
  {
    if (c == ' ')
      printf(" ");
    else
    {
      int index = c - 'a';
      if (index >=0 && index <= 26)
      {
        printf("%c", cipher[index]);
      }
    }
    scanf("%c", &c);
  }
}
#包括
#包括
#包括
#包括
#定义调试1
#如果(调试)printf,则定义printd
字符密码[26]={'y','h','e','s','o','c','v','x','d','u','i','g','l','b','k','r','z','t','n','w','j','p','f','m','a','q'};
int main()
{
整数计数,j;
scanf(“%d\n”,&count);

对于(j=0;j=0&&index将文件编译为foo,您可以执行以下操作:

./foo < input > output
/foo输出

这将读取输入,并将使用printf编写的所有内容写入输出。

我建议
fgetc()
over
scanf()
如果性能是你的最终目标,那么一周中的任何一天都可以。那么,到底什么不起作用?你的代码做什么?你希望它做什么?它本质上是一个转换器。它遵循一个特定的映射,从文件中获取输入,并根据映射将输出写入文件。这就是它的作用,我也期望它不会这样做好的,只能通过linux终端。嘿,非常感谢!这很有魅力。我现在可以松一口气了,我对输入/输出的事情非常紧张,因为事件即将发生。非常感谢。