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"

posted @ 2014-01-11 11:23  galoishelley  阅读(1087)  评论(0编辑  收藏  举报