c语言简单的指针程序,简单的C语言如程序,想要把文件指针写如函数里main函数是当输 爱问知识人...

回答LZ的问题:

以该程序为例,函数fun 的返回类型说明符为 void,表示它的返回为“空类型”,也就是无返回值的意思。

而且该函数也没有形参,因为fun(),括号里为空,没有参数。文件的打开方式与函数的形参或实参没有直接关系。 实参是实际调用时的参数,形参是接受实参值的形式参数,是根据函数设计的需求来定的。

在本例中,如果将文件打开方式改为"r"读文件,那么需要修改该函数体,将文件内容显示出来,而不能使用fputc这样的写文件函数了。

下面的注释,仅供参考:

#include //包含头文件

void fun() //函数头,void 表示无返回值 没有形参

{

FILE *f; //定义文件指针

char ch='a'; //定义char型变量ch,初始值为'a'

if ((f=fopen("c:\\aa。

dat","w"))==NULL) //用fopen函数打开C根目录下的aa。dat文件,以"w"写方式,并且让f文件指针指向该文件,如果fopen函数返回值等于NULL,则提示并结束程序。

{

printf("File Can't be find!\n"); //提示文件打开失败

}

else //文件打开成功

{

while (ch!='\n') //while循环,循环终止条件是当ch变量等于'\n'时

{

ch=getchar(); //得到键盘输入的字符

fputc(ch,f); //将字符写入f指针所指向的文件

}

}

fclose(f); //结束循环,关闭文件

}

void main() //主函数

{

int a=0; //定义int型变量a,初始化为0值

printf("请输入:\n"); //提示输入信息

scanf("%d",&a); //从键盘输入,赋值给a变量

switch(a) //多路分支判断

{

case 1:printf("OK\n"); break; //如果输入1,打印OK后退出

case 2: fun(); break; //如果输入2,调用fun函数后退出

}

}

PS:

在键盘输入2,程序调用fun函数,是由switch多路判断语句来控制实现的。

至于 fun 函数的返回值和形参类型写什么,与是否调用函数fun没有关系。

至于函数要不要返回值,看实际问题的需要了,如果需要在主调函数中处理或显示函数处理的结果,那么就需要设置恰当的返回值类型。至于形参,则要看设计函数的实际需求。

建议LZ,参阅相关资料关于 switch 语句的使用方法,及有函数返回值及形参的具体例子。

现在的程序代码,在运行时,输入2,就已经调用fun函数了,没有问题。只是代码控制逻辑上有点问题。输入2之后不能回车,否则就退出了。应该输入2之后,接着输入其它字符。回车结束,生成aa。dat文件!。

全部

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值