全部问题 > 当前问题

这段程序具体是怎么执行的嘞?@嘿嘿大人

blob.png

never 2016-2-17 13:49:33

共 3 个回答

嘿嘿大人 2016-2-17 13:54:54

这个就涉及预定义关键字被覆盖的问题,有一个就近原则,这个时候的scanf函数不是头文件里面的函数了,而是你自定义的那个scanf函数,所以这里调用之后不需要输入一个变量a的值而是输出hello world

never 2016-2-17 14:03:58

回复 嘿嘿大人:括号中不是叫参数嘛,是不是参数要相同才能调用?就是说倒数第二句要是是int scanf("char *s,int *a")的话就能调用第二行定义的这个预定义标识符了吗?

嘿嘿大人 2016-2-17 14:28:07

回复 never:是的啊,形参第一个是一个字符指针,所以就传入一个字符串“%d”,这第一个形参和实参类型不同,所以会出一个警告,但是不会报错,第二个形参是一个整形指针变量,所以传入的是一个&a,也就是a的地址,刚好符合条件啊

问题来自: 标识符