在初学C语言的时候总是忘记Scanf第二个参数是地址列表,应该加上取地址符,但是为什么是这样呢?一直不是很明白。
最近重新看C语言相关的书,了解到Scanf和Printf并不是C语言本身有的东西,它只是标准库的一个函数,说直白点就是,这两个函数也是别人写出来的。
这样一来,好像就容易理解了为什么Scanf是传址了——因为需要改变变量的值。
但是又有了一个问题——我写过的函数参数数目都是有限的,像这两个函数自己可不可以实现呢?
等解决后再贴代码吧。
在初学C语言的时候总是忘记Scanf第二个参数是地址列表,应该加上取地址符,但是为什么是这样呢?一直不是很明白。
最近重新看C语言相关的书,了解到Scanf和Printf并不是C语言本身有的东西,它只是标准库的一个函数,说直白点就是,这两个函数也是别人写出来的。
这样一来,好像就容易理解了为什么Scanf是传址了——因为需要改变变量的值。
但是又有了一个问题——我写过的函数参数数目都是有限的,像这两个函数自己可不可以实现呢?
等解决后再贴代码吧。