Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/c/59.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 代码在windows中的代码块上运行,但在linux上不提供输出_C_Linux_Codeblocks - Fatal编程技术网

C 代码在windows中的代码块上运行,但在linux上不提供输出

C 代码在windows中的代码块上运行,但在linux上不提供输出,c,linux,codeblocks,C,Linux,Codeblocks,我不熟悉在windows中编码和使用代码块。但是现在我需要在Linux系统中运行一段代码,但是我没有得到windows系统上得到的输出。请帮忙解决这个问题 “我的代码”的输入位于包含以下输入的文本文件中: 5 3012 3 3 4 5 40145 43412 43526 代码从文件中读取文本并打印输出 #include<stdio.h> #include <stdlib.h> #define MAXLITTERM 10 #define MAXTERMS 10 int gi

我不熟悉在windows中编码和使用代码块。但是现在我需要在Linux系统中运行一段代码,但是我没有得到windows系统上得到的输出。请帮忙解决这个问题

“我的代码”的输入位于包含以下输入的文本文件中:

5
3012
3 3 4 5
40145
43412
43526

代码从文件中读取文本并打印输出

#include<stdio.h>
#include <stdlib.h>
#define MAXLITTERM 10
#define MAXTERMS 10
int givenSOP[MAXTERMS][MAXLITTERM];
int main()
{

    int column[10];
   char name[] = "input.txt";

   FILE *f1 = fopen("input.txt","r");
   int i,j;
   char S;
   fscanf(f1,"%d",&givenSOP[0][0]);
   printf("\n %d\n", givenSOP[0][0]);

   for(i=1;i<=givenSOP[0][0];i++)
   {
       int point = ftell(f1);

       column[i] = 0;
       S = getc(f1);
       S = getc(f1);
       while(!feof(f1))
       {
           if(S=='\n')
           {
               S = getc(f1);
               break;
           }
           if(S!=' ' && S!='\n')
              column[i]++;
           S = getc(f1);
       }

       fseek(f1,point,SEEK_SET);
       for(j=0;j<column[i];j++)
       {
           fscanf(f1,"%d",&givenSOP[i][j]);
       }
   }

   for(i=1;i<=givenSOP[0][0];i++)
   {
       for(j=0;j<=givenSOP[i][0];j++)
       {
           printf("%d ",givenSOP[i][j]);
       }
       printf("\n");
   }

   return 0;
}
#包括
#包括
#定义MAXLITTERM 10
#定义MAXTERMS 10
int givenSOP[MAXTERMS][MAXLITTERM];
int main()
{
int列[10];
字符名[]=“input.txt”;
FILE*f1=fopen(“input.txt”,“r”);
int i,j;
字符S;
fscanf(f1、%d、&givenSOP[0][0]);
printf(“\n%d\n”,givenSOP[0][0]);

对于(i=1;i“}为什么不简单地(用)读几行,然后用
sscanf
解析出这行中的四到五个数字(注意
sscanf
),即使可能有更多(或更少)的数字行中的数字,逐行读取输入仍然比从文件中一次读取一个字符并来回跳转更容易处理。至于无法在Linux中运行的问题,您可能会做一些不好的事情,导致未定义的行为。请了解如何调试代码,更具体地说,如何调试我们的代码使用调试器在监视变量及其值的同时逐条检查代码语句。检查
fopen
是否成功。可能不会成功,因为
input.txt
文件可能不在程序查找它的位置。
for(i=1;i