我想在我的"%.4d"变量中用数字替换符号printf(例如在char*函数中)

例如:

printf("| %.4d |", 2);


那将打印:| 0002 |

我尝试过这样的事情:

int num = 2; //local var for the example
char *number = "| %.4d |", num;
write(1,number,strlen(number));


但这会打印:| %.4d |(不足为奇...)

注意:这部分在sighandler中,因此我不能使用printf

最佳答案

使用sprintf

sprintf (number, "| %.4d |", num);


Here文档

关于c - c-将%.4d符号与char *中的int交换,例如在printf中,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/44343098/

10-12 16:26