_set_printf_count_output

启用或禁用支持在 printf, _printf_l, wprintf, _wprintf_l的 %n 格式 - 函数族。

int _set_printf_count_output(
   int enable
);

参数

  • enable
    启用 %n 的非零值支持, 0 禁用 %n 支持。

属性值/返回值

%n 状态在调用此功能之前支持:非零,则 %n 支持已启用, 0,则禁用。

备注

出于安全考虑,默认情况下为 %n 格式说明符支持已禁用了 printf 及其所有变量。 如果 %n 在 printf 格式规范时,默认行为是调用无效参数处理程序 参数验证如中所述。 调用具有非 null 参数的 _set_printf_count_output 将导致 printf- 解释 %n 的函数族 printf键入域字符如中所述。

要求

实例

必需的头

_set_printf_count_output

stdio.h

有关其他的兼容性信息,请参见中介绍的 兼容性

示例

// crt_set_printf_count_output.c
#include <stdio.h>

int main()
{
   int e;
   int i;
   e = _set_printf_count_output( 1 );
   printf( "%%n support was %sabled.\n",
        e ? "en" : "dis" );
   printf( "%%n support is now %sabled.\n",
        _get_printf_count_output() ? "en" : "dis" );
   printf( "12345%n6789\n", &i ); // %n format should set i to 5
   printf( "i = %d\n", i );
}

Output

%n support was disabled.
%n support is now enabled.
123456789
i = 5

.NET Framework 等效

不适用。 若要调用标准 C 函数,请使用 PInvoke。 有关更多信息,请参见 平台调用示例

请参见

参考

_get_printf_count_output