string转char数组
来源:百度知道 编辑:UC知道 时间:2024/06/05 04:34:29
如何才能把一个string型中的每一个字母存到一个char a[]中····并且能够输出a[5]是什么字母····
用第二种方法能行···第一种不行,最后的p【1】不能输出,内存分配有问题·····
#include <iostream>
#include <string>
using namespace std;
int main(const char* p)
{
string sentence;
cout<<"please input your sentence:";
cin>>sentence;
int i=sentence.length();
cout<<i<<'\n';
p=sentence.c_str();
cout<<p[1];
return 0;
}
用第二种方法能行···第一种不行,最后的p【1】不能输出,内存分配有问题·····
#include <iostream>
#include <string>
using namespace std;
int main(const char* p)
{
string sentence;
cout<<"please input your sentence:";
cin>>sentence;
int i=sentence.length();
cout<<i<<'\n';
p=sentence.c_str();
cout<<p[1];
return 0;
}
char a[10];
string str="hello";
for(int i=0;i<10;i++)
a[i]=s.c_str()[i];
/*********************/
或者用字符串常量
const char *a;/*因为str.c_str()返回值是const char* 类型的*/
string str="hello";
a=str.c_str();
循环