在C语言中如何使一个函数使用另一个函数中的变量而与其它的函数无关?

如在一函数中为了读写数据而定义一个文件指针
FILE *fp;
并打开进行写入
fp=fopen("filename","w");
fprintf(fp, "balabalabala");
这时我调用另一个写入函数
otherprint();
问题是我在后面定义otherprint()里只是这样写好像是fp在此处作为没声明的东东。
otherprint()
{fprintf(fp,"otherbalaba");}
这该怎么办呢。如何声明呢,或者是有直接插入语句的方法呢。(文件里乱七八糟函数很多呀,声明成外部变量啥的不好吧)
急呀,有什么办法呀?

这个fp是局部变量,没有办法和其他函数共享,可以使用的解决方法为:
1、声明为全局变量,不过的确不好
2、作为参数传递,这样要增加一个形参追问

嗯,我试试参数传递的方法去。

追答

个人认为如果不使用全局变量就只能如此了

温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-10-09
传参数,把fp传给otherprint()追问

嗯,试一下

第2个回答  2011-10-09
利用 指针 或 返回值 都可以啊!如果回答对您有用,请及时采纳。
相似回答