【发布时间】:2013-03-17 23:46:31
【问题描述】:
int printf (const char* format, ... );
这是 printf 的签名。
我不明白的是,printf 怎么知道第一个参数的长度(const char* format)。
它知道开始(因为它是一个指针,我明白了),但指针没有结束之类的。通常当你想打印一些东西时你必须给出一个长度(例如Linux的sys_write)那么printf是怎么知道的呢?
编辑:
我一直在查看我在 ASM 中编写的代码,我认为它只是寻找一个 \0 字符。对吗?
【问题讨论】: