使用变量参数不能打印适当的整数

时间:2019-11-09 05:45:09

标签: c

在使用自定义打印功能打印正确的整数值时需要一些帮助。这是我的代码-怎么了?

$builder
    ->add('effort', DateIntervalType::class, [
        // ...
        'widget' => 'text',
        // ...
    ]);

1 个答案:

答案 0 :(得分:0)

看看调用函数的方式:

String

您告诉函数您将提供5个整数作为参数,但忽略所有这些整数。得到有趣的结果也就不足为奇了。使用类似这样的东西,它提供了5个整数参数:

prints(5);

例如:

prints(5, 0, -37, 248, 1239121, -91124887);

输出:

#include <stdio.h>
#include <stdarg.h>

static
void prints(int n, ...)
{
    va_list args;
    va_start(args, n);
    for (int i = 0; i < n; i++)
    {
        printf("%d\n", va_arg(args, int));
    }
    va_end(args);
}

int main(void)
{
    prints(5, 0, -37, 248, 1239121, -91124887);
    putchar('\n');
    prints(3, 99, 100, 101);
    putchar('\n');
    prints(1, 3141592);
    return 0;
}