#include <fstream>
#include <iostream.h>
#include <string.h>
using namespace std;
inline void out(char *a,char *b,int k)
{
for(int i=0;i<=k;i++)
if(b[i]==1)
cout<<a[i];
}
void subset(char *a,char *b,int k,int m)
{
if(k=m){
b[k]=1;out(a,b,k);
b[k]=0;out(a,b,k);}
else {
b[k]=1;subset(a,b,k+1,m);
b[k]=0;subset(a,b,k+1,m);}
}
void main()
{
char *array,*helper;
char str1[10];
int len;
cout<<"Please enter your characters:"<<endl;
cin>>str1;
len=strlen(str1);
array=new char[len];
helper=new char[len];
for(int i=0;i<len;i++)
helper[i]=0;
strcpy(array,str1);
subset(array,helper,0,len-1);
delete [ ] array;
delete [ ] helper;
}
初学C++,对于数组和指针有好多问题出现,这是我写的一个求子集的代码,编译、组建通过,而运行不出来,出现“DEBUG ERROR”对话框,不知道为什么?请指教