sprintf中的pcmC%iD%ip参数

时间:2012-07-02 08:42:19

标签: c linux linux-kernel printf

这行代码将做什么。

pcm->card->numberpcm->device都是int

char str[16];

sprintf(str, "pcmC%iD%ip", pcm->card->number, pcm->device);

它取自android / kernel / sound / core / pcm.c。

2 个答案:

答案 0 :(得分:2)

截至the description of sprintf()fprintf()%i

  

int参数在样式[ - ] dddd中转换为带符号的十进制数。精度   指定要显示的最小位数;如果转换的值可以   以较少的数字表示,它将使用前导零进行扩展。默认精度   是1.使用显式精度0转换0的结果不是字符。

结果是,例如如果pcmC12D23ppcm->card->number == 12,则pcm->device == 23

答案 1 :(得分:1)

我的猜测:此行正在形成设备的文件名。就像您可以在 / dev

中找到的那样