如何使用perror打印变量

时间:2014-07-12 21:57:25

标签: c

我想用perror打印变量,即我想写一些像perror("error with something %s", my_var)

的东西

是否有可能,我该怎么做?

2 个答案:

答案 0 :(得分:8)

使用fprintf()代替

fprintf(stderr, "error with something %s", my_var);
perror("");

否则你可以构建一个字符串,然后将它传递给perror

char yourstring[100];
snprintf(yourstring, sizeof yourstring, "error with something %s", my_var);
perror(yourstring);

答案 1 :(得分:0)

我知道它已经被回答了,但是我觉得它有一个更干净的版本

fprintf(stderr, "Error on line %d : %s\n", __LINE__, strerror(errno));
// Error on line 42 : Wrong argument