Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/spring-boot/5.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_Cycle_Sentence - Fatal编程技术网

C 在停止的位置保存并重新启动循环

C 在停止的位置保存并重新启动循环,c,cycle,sentence,C,Cycle,Sentence,我开始用C语言做一些事情,因为它在这种语言中得到了很多关注。 我做了一个数字和字母混合的单词生成器。 单词长度为8,包含特定字符 我请求帮助,因为我已经完成了正确生成单词的代码,每生成20000个单词,就会将最后一个单词保存在txt中,当您启动它时,它会检测到该单词并在控制台中显示 我喜欢做的是得到最后一个单词,并将其发送到一个又一个循环,如果有单词,则发送到单词的开头,而不是开始 这是您的代码,并提前感谢任何能够提供帮助的人 #include <stdio.h> #include

我开始用C语言做一些事情,因为它在这种语言中得到了很多关注。 我做了一个数字和字母混合的单词生成器。 单词长度为8,包含特定字符

我请求帮助,因为我已经完成了正确生成单词的代码,每生成20000个单词,就会将最后一个单词保存在txt中,当您启动它时,它会检测到该单词并在控制台中显示

我喜欢做的是得到最后一个单词,并将其发送到一个又一个循环,如果有单词,则发送到单词的开头,而不是开始

这是您的代码,并提前感谢任何能够提供帮助的人

#include <stdio.h>
#include <stdlib.h>
int main(int main, char *argv[]){
int a,b,c,d,e,f,g,h;
char var0[] = {'1','A','2','B','3','C','4','D','5','E','6'};
char var1[] = {'1','A','2','B','3','C','4','D','5','E','6'};
char var2[] = {'1','A','2','B','3','C','4','D','5','E','6'};
char var3[] = {'1','A','2','B','3','C','4','D','5','E','6'};
char var4[] = {'1','A','2','B','3','C','4','D','5','E','6'};
char var5[] = {'1','A','2','B','3','C','4','D','5','E','6'};
char var6[] = {'1','A','2','B','3','C','4','D','5','E','6'};
char var7[] = {'1','A','2','B','3','C','4','D','5','E','6'};
char caracteres[9];
FILE *fp, *sesion;
sesion = fopen("Save_Sesion.txt","r");
if (sesion == NULL){
printf("\nNo Sesion.\n");
}
else{
printf("\nLast key was:\n\n");
  while (feof(sesion) == 0){
  fgets(caracteres,9,sesion);
  printf("%s",caracteres);
  }
}
printf("Press any key to continue\n");
getchar();
for( a=0; a <= 10; a++){
  for( b=0; b <= 10; b++){
    for( c=0; c <= 10; c++){
      for( d=0; d <= 10; d++){
        for( e=0; e <= 10; e++){
          for( f=0; f <= 10; f++){
            for( g=0; g <= 10; g++){
              for( h=0; h <= 10; h++){
                 printf("%c%c%c%c%c%c%c%c\n",var0[a],var1[b],var2[c],var3[d],var4[e],var5[f],var6[g],var7[h]);
              } 
            }
          } 
        }
        fp = fopen("Save_Sesion.txt","w");
        fprintf(fp, "%c%c%c%c%c%c%c%c\n",var0[a],var1[b],var2[c],var3[d],var4[e],var5[f],var6[g],var7[h]);
        fclose(fp);
      } 
    } 
  } 
}
return 0;
}
#包括
#包括
int main(int main,char*argv[]{
INTA,b,c,d,e,f,g,h;
char var0[]={'1','A','2','B','3','C','4','D','5','E','6'};
charvar1[]={'1','A','2','B','3','C','4','D','5','E','6'};
char var2[]={'1','A','2','B','3','C','4','D','5','E','6'};
char var3[]={'1','A','2','B','3','C','4','D','5','E','6'};
charvar4[]={'1','A','2','B','3','C','4','D','5','E','6'};
char var5[]={'1','A','2','B','3','C','4','D','5','E','6'};
char var6[]={'1','A','2','B','3','C','4','D','5','E','6'};
char var7[]={'1','A','2','B','3','C','4','D','5','E','6'};
字符[9];
文件*fp,*sesion;
sesion=fopen(“Save_sesion.txt”、“r”);
如果(sesion==NULL){
printf(“\n无session.\n”);
}
否则{
printf(“\n上一个键是:\n\n”);
while(feof(sesion)==0){
fgets(caracteres,9,sesion);
printf(“%s”,字符);
}
}
printf(“按任意键继续\n”);
getchar();

对于(a=0;a我注意到的代码中的两个问题

14641次迭代后,您正在写入文件Save_session.txt,即11^4次。for循环从0到10次迭代,即11次迭代


当您写入文件时,循环变量e、f、g和h都将大于10,因此您将在第11个位置对数组var4、var5、var6和var7进行索引,这将导致数组索引超出范围。

我注意到代码中的几个问题

14641次迭代后,您正在写入文件Save_session.txt,即11^4次。for循环从0到10次迭代,即11次迭代


当您写入文件时,循环变量e、f、g和h都将大于10,因此您将在第11个位置索引到数组var4、var5、var6和var7,这导致数组索引超出范围。

“我开始用C做一些事情,因为它在这种语言中得到了很多关注。”-真的吗?我原以为还有更多的“现代”语言得到了更多的关注。@MitchWheat哦,我知道你在那里用这些引号做了什么…:PWhy你用feof()作为while循环的条件。这不是一个好的实践。也检查一下这个链接,你能更具体地说明你想要实现什么吗?解释一下“我喜欢做的是得到最后一个单词,然后把它发送到一个又一个的循环中,如果有单词的话,是单词的开始,而不是开始。”“我开始用C语言做事情,因为它在这门语言中得到了很多关注。“-真的吗?我原以为还有更多的‘现代’语言得到了更多的关注。@MitchWheat哦,我知道你用这些引号做了什么…:PWhy你用feof()作为while循环的条件。这不是一个好的实践。检查这个链接,你能更具体地说明你希望实现什么吗?解释一下。”“我喜欢做的是得到最后一个单词,并将其发送到一个又一个循环,如果有单词,则发送到单词的开头,而不是开始。"感谢您的回答,并对我的英语不好表示歉意。感谢feof的建议,我删除了它,它会更好。我已经检查了单词的生成并正确地执行了它。我知道存储在Save_Sesion.txt中的单词将其最后四个变量重新启动为1,但我不介意在正确生成后出现此问题。我满足于重新启动保存在Save_session.txt中的单词的艺术谢谢你的回复谢谢你的回答,也很抱歉我的英语不好。谢谢你的建议,我删除了它,它会更好。我已经检查了单词的生成并正确地做了。我知道保存在Save_session.txt中的单词将最后四个变量重新启动为1,但我不介意正确生成时出现此问题。我很乐意重新启动存储在Save_Sesion.txt中的单词,感谢您的响应