%*d, %*s等在输入输出语句中的作用

出现在输入输出函数中的%*c ,作用是在输入或输出时,跳过一个变量,例如:
void main()
{
int i=1,j=2,k=3;
printf("%d,%*d,%d\n",i,j,k,i);//遇到%*d,就把j跳过了,输出k,故后面应该放4个变量
}
程序的输出结果是1, 3,1
这种用法可以用来格式控制,k前面的空格数=j-(k的值占的位数);
例:printf("%d,%*d,%d\n", i, j + 4, k, i);
输出:1,     3,1  —— 3前面的空格数为5

出现在输入语句中是吃掉回车符,
例:scanf("%d%*d", &i);
   printf("%d\n", i);
执行后:# 1234<按回车>
     12<按回车>
    # 1234
posted @ 2015-06-14 10:46  super-root  阅读(584)  评论(0编辑  收藏  举报