现代的编译器(例如gcc), 如果打开编译警告参数, 编译器对标准中的可变参数函数(printf, scanf . . 等) 会进行匹配测试。象问题中的源代码, 用“gcc -Wall” 进行编译, 会给出这样的警告: “warning: int format, long int arg (arg 2)”