gpt4 book ai didi

c - 如何使用多个字符输出到文件

转载 作者:行者123 更新时间:2023-11-30 16:02:59 25 4
gpt4 key购买 nike

#define numeric_b '0'
#define numeric_e '9'
/** init string intervals ---*/
static char c0=numeric_b;
static char c1=numeric_b;
static char c2=numeric_b;
static char c3=numeric_b;
static char c4=numeric_b;
static char c5=numeric_b;
static char c6=numeric_b;
static char c7=numeric_b;
/** init start & end ----------------*/
static const char en = numeric_e +1;
static const char st = numeric_b +1;


void str_in(int length){
FILE * fp = fopen("list.txt","w");

switch(length){
case 0:
printf("%c\n",c0);break;
case 1:
printf("%c%c\n",c0,c1);break;
case 2:
printf("%c%c%c\n",c0,c1,c2);break;
case 3:
printf("%c%c%c%c\n",c0,c1,c2,c3);break;
case 4:
printf("%c%c%c%c%c\n",c0,c1,c2,c3,c4);break;
case 5:
printf("%c%c%c%c%c%c\n",c0,c1,c2,c3,c4,c5);break;
case 6:
printf("%c%c%c%c%c%c%c\n",c0,c1,c2,c3,c4,c5,c6);break;
case 7:
printf("%c%c%c%c%c%c%c%c\n",c0,c1,c2,c3,c4,c5,c6,c7);break;
}

fclose(fp);
}
void permute(int length){

while(c0<=en){
str_in(length);
c0++;
if(c0==en && length==0){break;}
if(c0==en){
c0=st;
c1++;
if(c1==en && length==1){break;}
if(c1==en){
c1=st;
c2++;
if(c2==en && length==2){break;}
if(c2==en){
c2=st;
c3++;
if(c3==en && length==3){break;}
if(c3==en){
c3=st;
c4++;
if(c4==en && length==4){break;}
if(c4==en){
c4=st;
c5++;
if(c5==en && length==5){break;}
if(c5==en){
c5=st;
c6++;
if(c6==en && length==6){break;}
if(c6==en){
c6=st;
c7++;
if(c7==en && length==7){break;}
}
}
}
}
}
}
}
}
}

最佳答案

抱歉@zartag,但这是一些严重混淆的代码。请在一段中告诉我们您想要做什么以及您认为您的代码正在做什么。

关于问题标题(“输出到文件”),我发现您的代码最明显的错误是您使用的是 printf 而不是 fprintf。它们的行为几乎相同,除了 printf 打印到标准输出,而 fprintf 打印到文件流(例如,打印到 list.txt)。请参阅documentation on fprintf 。在你的情况下应该是

FILE * fp = fopen("list.txt","w");

switch(length){
case 0:
fprintf(fp, "%c\n",c0);break;
..snip

但说真的,代码迫切需要重构(例如,看起来整个 switch block 可以用 for 循环替换)。当您在这里提出问题时,请给我们提供比代码 list 和问题标题更多的信息。

关于c - 如何使用多个字符输出到文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4532624/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com