簡體   English   中英

%r在內核printf格式中的含義是什么?

[英]What does %r mean in kernel printf formats?

在內核源代碼的幾個地方我可以找到這個:

一個例子是

if (console_sc != NULL && console_sc->vtermid == sc->vtermid) {
        sc->outseqno = console_sc->outseqno;
        console_sc = sc;
        sprintf(uart_phyp_consdev.cn_name, "ttyu%r", unit);
        tty_init_console(sc->tp, 0);
}

另一個例子是:

        if (!(vw->vw_flags & VWF_READY)) {
                callout_init(&vw->vw_proc_dead_timer, 0);
                terminal_maketty(vw->vw_terminal, "v%r", VT_UNIT(vw));
                vw->vw_flags |= VWF_READY;
                if (vw->vw_flags & VWF_CONSOLE) {
                        /* For existing console window. */
                        EVENTHANDLER_REGISTER(shutdown_pre_sync,
                            vt_window_switch, vw, SHUTDOWN_PRI_DEFAULT);
                }
        }

但如果我查看sprintf手冊頁,我找不到對'r'格式說明符的任何引用。

它做了什么以及在哪里記錄?

查看sprintf手冊頁。 它說:

%r使用當前DDB基數顯示整數。 這種對%r的非標准解釋僅適用於db_printf()。

這里有關於DDB的更多信息。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM