| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1177 人关注过本帖
标题:_CxxThrowException 是什么?初学者
只看楼主 加入收藏
gwcome
Rank: 2
来 自:尼玛星球
等 级:论坛游民
帖 子:43
专家分:33
注 册:2013-1-22
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:6 
_CxxThrowException 是什么?初学者
00131168  jmp         _CxxThrowException (1325D6h) 

反汇编调试的时候碰到的??
我调试的是一个try块,想要了解try,throw,catch这三个之间的关系??程序内部是周末运行的?
它们有什么格式??
是不是
try{不确定的代码}
catch{捕捉错误信息}
throw又是什么时候用,又运用在哪里??
我调试的代码也顺便贴出
程序代码:
#include <iostream>
#include <climits>

unsigned long returnFactorial(unsigned short num) throw (const char *);

int main()
{
    unsigned short num = 0;

    std::cout << "请输入一个整数: ";
    while( !(std::cin>>num) || (num<1) )
    {
        std::cin.clear();             // 清除状态
        std::cin.ignore(100, '\n');   // 清除缓冲区
        std::cout << "请输入一个整数:";
    }
    std::cin.ignore(100, '\n');

    try
    {
        unsigned long factorial = returnFactorial(num);
        std::cout << num << "的阶乘值是: " << factorial;
    }
    catch(const char *e)
    {
        std::cout << e;
    }

    return 0;
}

unsigned long returnFactorial(unsigned short num) throw (const char *)
{
    unsigned long sum = 1;
    unsigned long max = ULONG_MAX;

    for( int i=1; i <= num; i++ )
    {
        sum *= i;
        max /= i;
    }

    if( max < 1 )
    {
        throw "悲催。。。该基数太大,无法在该计算机计算求出阶乘值。\n";
    }
    else
    {
        return sum;
    }
}
搜索更多相关主题的帖子: 信息 
2013-03-23 10:34
yuccn
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:何方
等 级:版主
威 望:167
帖 子:6815
专家分:42393
注 册:2010-12-16
收藏
得分:10 
有本叫c++ 反汇编的,对这个讲的很细

我行我乐
公众号:逻辑客栈
我的博客:
https://blog.yuccn. net
2013-03-23 10:38
gwcome
Rank: 2
来 自:尼玛星球
等 级:论坛游民
帖 子:43
专家分:33
注 册:2013-1-22
收藏
得分:0 
回复 2楼 yuccn
论坛有下吗

小菜小菜
2013-03-23 10:48
rjsp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:528
帖 子:9025
专家分:54030
注 册:2011-1-18
收藏
得分:0 
你的代码挺好的呀,不知道你想问什么
不过,“catch{捕捉错误信息}”应当改为“catch{捕捉异常信息}”,异常 和 错误 是无一丝一毫关系的两个独立概念。在C++中,异常属于逻辑方面的概念,错误属于运行方面的概念。
2013-03-23 10:51
gwcome
Rank: 2
来 自:尼玛星球
等 级:论坛游民
帖 子:43
专家分:33
注 册:2013-1-22
收藏
得分:0 
回复 4楼 rjsp
不是我写的。。。我想了解内部是如何运行的

小菜小菜
2013-03-23 11:01
gwcome
Rank: 2
来 自:尼玛星球
等 级:论坛游民
帖 子:43
专家分:33
注 册:2013-1-22
收藏
得分:0 
回复 4楼 rjsp
warning C4290:忽略 C++ 异常规范,但指示函数不是 __declspec(nothrow)
这个warning是什么意思  还请赐教

小菜小菜
2013-03-23 11:05
rjsp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:528
帖 子:9025
专家分:54030
注 册:2011-1-18
收藏
得分:10 
回复 6楼 gwcome
VC的问题,VC不支持“异常规格说明”
不过,这也不是什么问题,因为“异常规格说明”本身就即复杂又没用,听说新标准要废了它
2013-03-23 11:14
快速回复:_CxxThrowException 是什么?初学者
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.018078 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved