0

这行代码会做什么。

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

char str[16];

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

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

4

2 回答 2

2

根据 和的描述sprintf(),是fprintf()%i

int 参数转换为样式为 [-]dddd 的有符号十进制。精度指定出现的最小位数;如果被转换的值可以用更少的数字表示,它将用前导零扩展。默认精度为 1。使用显式精度 0 转换 0 的结果是没有字符。

所以结果是例如pcmC12D23pifpcm->card->number == 12pcm->device == 23

于 2012-07-02T08:50:00.287 回答
1

我的猜测:这一行正在形成设备的文件名。就像你可以在/dev中找到的一样

于 2012-07-02T08:50:08.167 回答