剑侠情缘五毒秘籍选择:C语言里*号的使用.

来源:百度文库 编辑:中科新闻网 时间:2024/05/09 13:49:12
在scanf和printf语句中的*号用处具体是什么啊?
比如%*d,%*f之类的在这两个语句中到底起到什么作用啊?
不是啊,我特指输入输出语句中的*,给个程序段吧
main( )
{int i;
for(i=1;i<=5;i++) printf("%*d\n",i,i);
}
这里的*号

在scanf里表示虚读,比如%*4d就表示跳过4个字符再读。
比如,scanf("%3d%*4d%f"&x,&y);
当输入流为12345678765.43(回车)时,将把123送x(因为%3d),跳过4个字符(因为%*4d),把8765.43送y。

在printf里表示右对齐的位数由参数值决定,比如
int a=1;printf("%*d",4,a);
就是打印a的值时,占4个字符宽度。以此来实现动态排版。

*是指针的意思,详细的看指针章节吧。

%*d是指向整数的指针,*f是指向float的指针。