首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

C++高手

2012-03-20 
求助C++高手求C++的高手!为什么我的这个程序编译没错,但是不能运行,总是弹出窗口:出现一个问题,导致程序停

求助C++高手
求C++的高手!

为什么我的这个程序编译没错,但是不能运行,总是弹出窗口:出现一个问题,导致程序停止正常工作。(我用Cfree)编的!


[code=C/C++][/code]

#include<iostream>
#include<cmath>
#include<stdexcept>
#include<cctype>
#include<typeinfo>
using namespace std;
int parsebinary(const char * const binarystring) ;
int main()
{
cout<<"请输入二进制字符串:"<<endl;
char binarystring[100];
cin.getline(binarystring,100);
try
{
for(int i=0;i<strlen(binarystring);i++)
{
if(binarystring[i]!=48&&binarystring[i]!=49)
  throw runtime_error("你所输入的不是二进制字符串!");
}
  cout<<"对应的十进制字符串:"; 
cout<<parsebinary (binarystring)<<endl;
}
catch(runtime_error &k)
{
cout<<k.what()<<endl;
cout<<typeid(k).name()<<":"; 

}

return 0;
}


int parsebinary(const char * const binarystring)  
{

 
char *copy;
int sum=0;
for(int j=0;j<strlen(binarystring);j++)
{
copy[j]=binarystring[j]-48;
}

for(int i=0,n=strlen(binarystring)-1;i<strlen(binarystring);i++,n--)
{  

sum +=pow(2.0,n)*copy[i];  
}

return sum;
 
}

[解决办法]
在debug模式下调试运行,出错后查看堆栈.
[解决办法]
#include<iostream>
#include<cmath>

#include<stdexcept>
#include<cctype>
#include<typeinfo>
using namespace std;
double parsebinary(const char * const binarystring) ;
int main()
{
cout<<"请输入二进制字符串:"<<endl;
char binarystring[100];
cin.getline(binarystring,100);
try
{
for(unsigned int i=0;i<strlen(binarystring);i++)
{
if(binarystring[i]!=48&&binarystring[i]!=49)
throw runtime_error("你所输入的不是二进制字符串!");
}
cout<<"对应的十进制字符串:";
cout<<parsebinary (binarystring)<<endl;
}

catch(runtime_error &k)
{
cout<<k.what()<<endl;
cout<<typeid(k).name()<<":";
}

return 0;
}


double parsebinary(const char * const binarystring)
{

 int len = strlen(binarystring);
char *copy = new char[len+1]; //用动态分配内存,你那个做法会得到一个野指针。

double sum=0;
for(unsigned int j=0;j<strlen(binarystring);j++)
{
copy[j]=binarystring[j]-48;
}



for( int i=0, n=len-1;i<len;i++,n--)
{

sum +=pow(2.0,n)*copy[i]; 
}

return sum;
  
}
//打红色是本人自己的改进,望有用!
[解决办法]
问楼猪和楼上一个问题。。你们的变量n [color=#00FF00]从哪来的。。[/color]
[解决办法]

探讨
问楼猪和楼上一个问题。。你们的变量n 从哪来的。。

[解决办法]
探讨

引用:
问楼猪和楼上一个问题。。你们的变量n 从哪来的。。
囧.........

热点排行