我的项目中有这个命令(在C中):
int addFinalDataStr(char* value)
{
fprintf(objFile,"%-7.7s\n",value);
fflush(objFile);
}
当我使用类似"60100"
的值调用此方法时,它会打印"60100"
没有问题,
但是当我用"37777777773"
之类的字符串调用它时,它只打印出"0"
。
答案 0 :(得分:0)
我认为您的错误是由编译器检查另一个编译器引起的(我建议您使用GCC编译器)并查看它是否有效。
答案 1 :(得分:0)
2 问题
printf("%-7.7s\n", "60100");
// should print "60100 ", not "60100" as OP states
printf("%-7.7s\n", "37777777773");
// should print "3777777", not "0".
似乎编译器不符合要求或帖子中缺少一些重要信息。