转:http://379910987.blog.163.com/blog/static/3352379720111026101835400/
char* Alphabet(int n)
{
char* pStr=new char[n+1];//last
one for '\0'
pStr[n]='\0';
int i;
for(i=0;i<n;i++)
pStr[i]=i+97;
return pStr;
}
注意最后一句,返回的确实是指向字符串的指针。
好了,现在函数有了,该如何调用?使用过程中又有那些注意事项呢?
int main()
{
char* str=Alphabet(14);
cout<<str<<endl;
delete[] str;
cin.ignore();
return 0;
}
{
char* str=Alphabet(14);
cout<<str<<endl;
delete[] str;
cin.ignore();
return 0;
}
调用和普通的函数没有太大区别,只需要意识到返回类型为char*——指针类型即可,但是使用完之后,一定要注意使用该delete[],看起来似乎在main函数中没有使用new,应该不用delete[],但是实际上,这个delete[] 是针对的Alphabet中的new进行的操作,如果忘记了,呵呵,又是C程序员的噩梦——内存泄漏

2381

被折叠的 条评论
为什么被折叠?



