C语言 帮忙详细的分析一下这段C语言程序!谢谢!

{ sp[i]=bddtrue;
for(j=0;ppre[i][j]!=0;j++)
{spt[j]=bddfalse;
for(k=0;tpre[ppre[i][j]-1][k]!=0;k++)
spt[j]=bdd_apply(spt[j],p[tpre[ppre[i][j]-1][k]-1],bddop_or);
// printf("\n spi%d is: ",j);
//bdd_printset(spi[j]);
sp[i]=bdd_apply(sp[i],spt[j],bddop_and);
//printf("\n sp%d is: ",i);
// bdd_printset(sp[j]);
}
sp[i]=bdd_apply(bdd_not(p[i]),sp[i],bddop_or);
printf("sp[%d] completed.\n",i+1);
}
程序已经自己分析出来了,但想请问一下下面的这段什么意思???

fprintf(fp,"Start time: %4d-%d-%02d %d:%02d:%02d\n",

now->tm_year+1900,now->tm_mon+1, now->tm_mday,

now->tm_hour, now->tm_min,now->tm_sec);

后面这一段是将现在的时间按格式输出到fp文件中。now的定义为struct tm * now;然后用localtime()函数取得本地时间。
年加1900是因为本地时间是的年份以1900为0开始记的,月加1是因为本地时间的月份是从0开始记的。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2015-05-14

这只是fprintf的输出格式,其中d前面的数字是指定宽度的,如果d前面宽度的前面有0 则表明右对齐而且不满宽度以0补充,'-'是左对齐,默认是右对齐,

所以你的那个fprintf的意思只是指定了宽度 4   , 默认  ,右对齐 2不足以0填充,右对齐2不足以0填充。。。。。。等等。  如果你想学到更多这种格式化fprintf,请看上面图片。这是书里面写的教学内容。

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网