#include<iostream>
#include<cstdlib>
char * buildstr(char c,int n);
int main()
{using namespace std;
int times;
char ch;
cout<<"Enter a character:";
cin>>ch;cout<<"Enter an integer:";
cin>>times;
char * ps=buildstr(ch,times);
cout<<ps<<endl;
delete ps;
ps=buildstr('+',20);
cout<<ps<<"-DONE-"<<ps<<endl;
delete [] ps;
system("PAUSE");
return 0;
}
char * buildstr(char c,int n)
{char * pstr=new char;
pstr[n]='\0';
while(n-->0)pstr[n]=c;
return pstr;
}
运行时输入v,然后输入46,会出来46个v然后提示触发一个断点。求问是什么愿意?好像是char * pstr=new char;这段出问题了
#include<cstdlib>
char * buildstr(char c,int n);
int main()
{using namespace std;
int times;
char ch;
cout<<"Enter a character:";
cin>>ch;cout<<"Enter an integer:";
cin>>times;
char * ps=buildstr(ch,times);
cout<<ps<<endl;
delete ps;
ps=buildstr('+',20);
cout<<ps<<"-DONE-"<<ps<<endl;
delete [] ps;
system("PAUSE");
return 0;
}
char * buildstr(char c,int n)
{char * pstr=new char;
pstr[n]='\0';
while(n-->0)pstr[n]=c;
return pstr;
}
运行时输入v,然后输入46,会出来46个v然后提示触发一个断点。求问是什么愿意?好像是char * pstr=new char;这段出问题了