반응형
= 참고> http://stackoverflow.com/questions/3401156/what-is-the-use-of-the-n-format-specifier-in-c
= 설명
%n : signed int pointer 로 지정된 인자에 "%n"표시전까지의 column count값을 반환해줍니다.
예> printf("%s: %nFoo\n", "hello", &n);
n == 5/*hello*/ + 2/*: */ == 7
%* : %3 같은 포매팅용 값을 인자로 받겠다는 것임
예> printf("%*sBar\n", n, "");
n == 7 이므로 n, "" 인자에 의해서
7칸뒤에 ""가 적용되므로 7칸이 공백이라는 것임.
결론적으로 아래 사용법은 Foo와 같은 위치에 Bar를 프린트 하기 위한 코드임.
= 사용법
int n; printf("%s: %nFoo\n", "hello", &n); printf("%*sBar\n", n, "");
결과>hello: Foo Bar
변형>int n = printf("%s: ", "hello"); printf("Foo\n"); printf("%*sBar\n", n, "");
# 변수들일 경우
int n = printf("%s: ", "hello");
printf("%s\n", "Foo"); printf("%*s%s\n", n, "",
"Bar"
);
반응형
'프로그램...' 카테고리의 다른 글
[특수문자] (0) | 2016.01.14 |
---|---|
[C1004W] Booting Log (0) | 2015.10.29 |
[git] branch 찾기 및 Baisc (0) | 2015.10.01 |
[Virtual Box] 디스크 사이즈 늘리기 (0) | 2015.09.14 |
[Trouble Shooting] (0) | 2015.09.07 |