c语言文件return和exit(0)有什么区别?
#include<stdio.h>structstudent{charname[10];intnum;intage;charadd[10];}stud[4];voidsa...
#include<stdio.h>
struct student
{ char name[10];
int num;
int age;
char add[10];
}stud[4];
void save()
{ int i;
FILE *p;
if((p=fopen("file1.c","wb")))
{
printf("can not open file");
return;//这里用exit(0)和return有什么区别?
}
for(i=0;i<4;i++)
while(fwrite(&stud[i],sizeof(student),1,p)!=1)
{printf("file write error\n");<br>fclose(p);<br>}
}
void main()
{
int i;
for(i=0;i<4;i++)
scanf("%s%d%d%s",stud[i].name,&stud[i].num,&stud[i].age,stud[i].add);
save();
} 展开
struct student
{ char name[10];
int num;
int age;
char add[10];
}stud[4];
void save()
{ int i;
FILE *p;
if((p=fopen("file1.c","wb")))
{
printf("can not open file");
return;//这里用exit(0)和return有什么区别?
}
for(i=0;i<4;i++)
while(fwrite(&stud[i],sizeof(student),1,p)!=1)
{printf("file write error\n");<br>fclose(p);<br>}
}
void main()
{
int i;
for(i=0;i<4;i++)
scanf("%s%d%d%s",stud[i].name,&stud[i].num,&stud[i].age,stud[i].add);
save();
} 展开
3个回答
2013-10-25
展开全部
区别就是一个是正常结束EXIT是终止程序运行
2013-10-25
展开全部
我认为没区别,仅此格式好看!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐于2017-11-26
展开全部
return是返回函数调用,如果返回的是main函数,则为退出程序,
exit是在调用处强行退出程序,运行一次程序就结束, 无论写在那里,都是程序推出,括号里的数字0,1,-1会被写入环境变量ERRORLEVEL,其它程序可以由此判断程序结束状态。一般0为正常推出,其它数字为异常,其对应的错误可以自己指定。 楼上两位的观点不管苟同,例如不是在主函数的话,return只是结束该子函数并返回上一个函数,程序是没有结束的,而exit是放在哪都是直接结束整个程序,return是正常结束一个函数,而exit(0)也表示正常结束,这不能说是区别。。。
exit是在调用处强行退出程序,运行一次程序就结束, 无论写在那里,都是程序推出,括号里的数字0,1,-1会被写入环境变量ERRORLEVEL,其它程序可以由此判断程序结束状态。一般0为正常推出,其它数字为异常,其对应的错误可以自己指定。 楼上两位的观点不管苟同,例如不是在主函数的话,return只是结束该子函数并返回上一个函数,程序是没有结束的,而exit是放在哪都是直接结束整个程序,return是正常结束一个函数,而exit(0)也表示正常结束,这不能说是区别。。。
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询