关闭

string类的data()与c_str()的区别

317人阅读 评论(0) 收藏 举报
分类:

 cout<<"\n========================"<<endl;
 //s) c_str() //将内容以C_string返回
 {
        string myStr1("Hello--------");
        string myStr2("world!\n");
  const char* pStr=(myStr1+myStr2).c_str();
  printf(pStr);
  printf("%d\n",pStr[strlen(pStr)]);
  myStr1+="DEF\n";
  printf(myStr1.c_str());

 }
 //t) data() //将内容以字符数组形式返回
 {
        string myStr("Hello world!\n");
  const char* pStr=myStr.data();
  printf(pStr);
  printf("%d\n",pStr[strlen(pStr)]);
 }
 cout<<"\n========================"<<endl;

========================
Hello--------world!
0
Hello--------DEF
Hello world!
0

========================



请问string类的data()与c_str()的区别 [问题点数:20分,结帖人Dic4000]

收藏
0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:3107749次
    • 积分:41413
    • 等级:
    • 排名:第91名
    • 原创:399篇
    • 转载:4555篇
    • 译文:5篇
    • 评论:611条
    文章分类
    最新评论