#include <stdio.h> main() { int m=0, n=0; double x = 333.77777; printf("x = %*.*f", m, n, x); } printf문에서 * 의 의미를 모르겠네요. 책에는 인자리스트에서 값을 얻어온다고 하던데... 실행해보면 x = 334 라는 값이 나오네요. 뭐가 어케되는건지. 꼭 좀 알려주세요.--한국 이겨라!!!
printf 의 * 는 필드 너비나 정밀도를 인자로 받으라는 뜻입니다. 여기서 %*.*f 는 인자 m 과 n 을 너비와 정밀도로 쓰고 x 를 출력하는데, n 이 0 이라 소수점 없이 334 가 나옵니다. 소수점을 보고 싶으면 n 을 2 같은 값으로 바꾸세요.