Computer >> 컴퓨터 >  >> 프로그램 작성 >> C 프로그래밍

printf()에서 %n의 용도는 무엇입니까?

<시간/>

C 언어에서 %n은 특수 형식 지정자입니다. 이는 printf()가 해당 인수가 가리키는 변수를 로드하도록 합니다. %n이 발생하기 전에 printf()에 의해 인쇄된 문자 수와 동일한 값으로 로드가 수행됩니다.

참고 - 아무 것도 인쇄하지 않습니다. 또 다른 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