在c语言中是否有c++一样的异常处理机制,如果没有如何实现?
程序如下:
#include <stdio.h>
long fact(int n);
int main()
{
int num=0;
while(num>=0)
{
printf(" Enter a number form 1 to 15");
scanf( "%d",&num);
if (num>=0&&num<15)
printf("%d ! is %ld",num,fact(num));
else
printf(" this number ");
};
return 0;
}
long fact(int n)
{
if(n>1)
return(n*fact(n-1));
else
return(1);
}
编译后,如果输入的是字母的话,屏幕滾屏。在c语言中是否可以实现c++语言的异常处理方式。或者如何实现对输入的是字符还是数字的检验。
#include <stdio.h>
long fact(int n);
int main()
{
int num=0;
while(num>=0)
{
printf(" Enter a number form 1 to 15");
scanf( "%d",&num);
if (num>=0&&num<15)
printf("%d ! is %ld",num,fact(num));
else
printf(" this number ");
};
return 0;
}
long fact(int n)
{
if(n>1)
return(n*fact(n-1));
else
return(1);
}
编译后,如果输入的是字母的话,屏幕滾屏。在c语言中是否可以实现c++语言的异常处理方式。或者如何实现对输入的是字符还是数字的检验。
...全文
相关推荐
java代码-两个数字相加
java代码-两个数字相加
C语言中的异常处理实现:cpp-CException
本文还有配套的精品资源,点击获取 简介:在C++中,异常处理是核心特性之一,而C语言并不直接支持这一功能。本项目“cpp-CException”提供了一种C语言中的异常处理实现方式,通过CException库模拟了C++中的 try 、 catch 和 throw 关键字。库内含有宏定义、异常类定义以及栈回溯功能,使得开发者可以在C...
两个umat实例代码
两个umat实例代码
C++实现接两个链表实例代码
主要介绍了C++实现接两个链表实例代码的相关资料,需要的朋友可以参考下
两个版本的GBDT(GBRT)源代码
第一个是完整版的25M(注释很少),第二个是另外一个简化版的146kb(注释比较全)。


