printf--动态指定输出格式长度
1 char a1[] = {'A', 'B', 'C'}; 2 char a2[] = "world"; 3 4 5 printf("[%.*s][%.*s]\n", 2, a1, 10, a2); 6 printf("[%.*s][%.*s]\n", sizeof(a1), a1, sizeof(a2), a2); 7 printf("[%-*d]\n", 4, 'A'); //产生"65 " 8 printf("[%-*s]\n", 4, "A"); //产生"A " 9 printf("[%#0*X]\n", 8, 128); //产生"0X000080","#"产生0X 10 printf("[%*.*f]\n", 10, 2, 3.1415926); //产生" 3.14"
左补0
printf("[%0*s]\n", 4, "A"); //产生"000A"