C++指向字符数组的指针,需要满足字符数组名作为第一个元素地址,指针保存在另一个对象的地址;案例代码如下:
#include
#include
#include
#include
using namespace std;
int main()
{
char *sa="Allan";
cout<//sa保存的是第一个字符的地址,对sa进行解引用得到第一个字符;
cout<<*sa<char sb[]={'B','o','b'};
//内存中有大量空字符
cout<char sc[]={'S','a','m','\0'};
cout<cout<<*sc< char *sar[]={"Allan","Tom","Peter","Raees","Umer"};
//将(字符指针的)数组的一对迭代器传递给(字符指针的)列表,将列表初始化为
//数组中的一段元素的副本
listslst(sar,sar+5);
vectorsvec;
string str1(sa);
cout<//在VS2005上没有"预期的运行时错误"(C++ Primer)
string str2(sb);
cout<string str3(sc);
cout<svec.assign(slst.begin(),slst.end());
for(list::iterator lit=slst.begin();lit!=slst.end();++lit){
cout<<*lit<<" ";
}
cout<for(vector ::iterator vit=svec.begin();vit!=svec.end();++vit){
cout<<*vit<<" ";
}
cout<system("pause");
return 0;
}