%n在printf()中有什么用?

在C语言中,%n是一种特殊的格式说明符。这将导致printf()加载由相应参数指向的变量。加载的值等于printf()%n出现之前打印的字符数。

注意-它不打印任何内容。另一个printf()函数用于打印语句。

这是用C语言编写的%n的示例,

示例

#include<stdio.h>
int main() {
   int s;
   printf("The value of %ns : ", &s);
   printf("%d", s);
   getchar();
   return 0;
}

输出结果

The value of s : 13

即使我们将值提供给标识符,它也不会考虑我们给定的值。它计算在语句中使用%n之前使用的字符。它不会将%n视为一个字符。

这是一个示例,如果我们传递值,

示例

#include<stdio.h>
int main() {
   int s;
   int m = 28;
   int val;
   printf("The value of %ns and %nm %nval : ", &s, &m, &val);
   printf("%d\t%d\t%d", s, m, val);
   return 0;
}

输出结果

The value of s and m val : 131921