您的位置:首页 > 其它

scanf argc argv解析

2016-10-20 19:58 162 查看
scanf函数是一个标准库函数,它的函数原型在头文件“stdio.h”中

scanf函数的一般形式为:

scanf(“格式控制字符串”, 地址表列);

其中,格式控制字符串的作用与printf函数相同,但不能显示非格式字符串,也就是不能显示提示字符串。地址表列中给出各变量的地址。地址是由地址运算符“&”后跟变量名组成的。

如:

int a,b,c;
scanf("%d%d%d",&a,&b,&c);


在scanf语句的格式串中由于没有非格式字符在“%d%d%d”之间作输入时的间隔,因此在输入时要用一个以上的空格或回车键作为每两个输入数之间的间隔

格式字符串:

格式字符串的一般形式为:

%[*][输入数据宽度][长度]类型

1) 类型

表示输入数据的类型,其格式符和意义如下表所示。

格式 字符意义

d 输入十进制整数

o 输入八进制整数

x 输入十六进制整数

u 输入无符号十进制整数

f或e 输入实型数(用小数形式或指数形式)

c 输入单个字符

s 输入字符串

2) “*”符

用以表示该输入项,读入后不赋予相应的变量,即跳过该输入值。如:

scanf(“%d %*d %d”,&a,&b);

当输入为:1 2 3时,把1赋予a,2被跳过,3赋予b。

3) 宽度

用十进制整数指定输入的宽度(即字符数)。例如:

scanf(“%5d”,&a);

输入12345678只把12345赋予变量a,其余部分被截去。又如:

scanf(“%4d%4d”,&a,&b);

输入12345678将把1234赋予a,而把5678赋予b。

argc是命令行总的参数个数 默认值1即任何数据不输入时为1,由于文件名就是第一个参数

argv[]是argc个参数,其中第0个参数是程序的全名,以后的参数

命令行后面跟的用户输入的参数,比如:

int main(int argc, char* argv[])

{

int i;

for (i = 0; i

ddd

char *argv[]是一个字符数组,其大小是int argc,主要用于命令行参数 argv[] 参数,数组里每个元素代表一个参数;

比如你输入

test a.c b.c t.c



argc = 4

argv[0] = “test”

argv[1] = “a.c”

argv[2] = “b.c”

argv[3] = “t.c”

参考博客:

http://c.biancheng.net/cpp/html/34.html

http://www.cnblogs.com/avril/archive/2010/03/22/1691477.html

http://blog.chinaunix.net/uid-26727991-id-3087765.html
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: