CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
不看会后悔的Windows XP之经验谈 简单快捷DIY实用家庭影院
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  C/C++ >  C语言

怎样把string转换成char*&?

楼主zcj_csdn()2002-01-05 15:14:40 在 C/C++ / C语言 提问

如何将string类型的变量传递给函数getName(char   *&str)?  
  问题点数:20、回复次数:11Top

1 楼hollysky(爱神)回复于 2002-01-05 15:29:11 得分 10

char*   pBuf;  
  pBuf   =   new   char[MAX];  
  string   m_str;  
      ...  
  m_str.copy(pBuf,nLen);  
  getName(pBuf);  
   
   
  Top

2 楼zcj_csdn()回复于 2002-01-05 15:47:52 得分 0

这样行否:  
  string   m_str;  
  getName(const_cast<char*&>m_str.data());Top

3 楼hollysky(爱神)回复于 2002-01-05 15:49:59 得分 0

只需要转化为指针类型传入即可  
  因为char*&   是指针引用Top

4 楼zcj_csdn()回复于 2002-01-05 15:54:46 得分 0

是这样吗:  
  getName(const_cast<char*>m_str.data());   Top

5 楼luohongming(lhm)回复于 2002-01-05 17:35:53 得分 0

用CString类的GetBuffer()函数试试  
  CString   str;  
  getName(str.GetBuffer())Top

6 楼Donaldzju(鸭子)回复于 2002-01-05 21:56:04 得分 0

你的string   是STL里的,还是CString?  
  STL   string   :   string.c_str()Top

7 楼sharp_shooter(狙击手)回复于 2002-01-06 01:23:21 得分 0

又来晚了Top

8 楼qqchen79(知秋一叶)回复于 2002-01-06 03:37:05 得分 0

string的c_str()返回为const   char*,只能去掉const(用const_cast)。  
  但是谁保证string的内部表示一定就是char[]呢?最好的办法还是copy出来,然后再调函数。Top

9 楼zcj_csdn()回复于 2002-01-06 11:13:39 得分 0

string::c_str()和string::data()有没有区别?Top

10 楼lak47()回复于 2002-01-06 13:47:11 得分 10

书上说c_str()和data()有区别,c_str返回C风格字符串,有一个要在末尾加上'\0',用strlen取回的长度要相差1,但是我在VC6.0下测试,用strlen返回的长度是一样的,不知为何,在Window下把它们当相同的使用吧Top

11 楼uchinaboy()回复于 2002-01-06 14:35:14 得分 0

逐个传Top

相关问题

  • Char[]怎样转换成string
  • 送分了: String 怎样转换成 Char?
  • 怎样将string 转换为 const char* ??
  • unsigned char* 转换 String
  • String转换成char
  • C++BUILDER 中CHAR ,STRING ,ANSISTRING,WIDESTRING 4 种类型怎样转换?
  • 请问怎样把一个char转换成String呢
  • 怎样把char型变量转换成String型变量?
  • 在托管c++中怎样把String转换成char*?
  • 突然忘记ascii码怎样转换成string或char类型???

关键词

  • 函数
  • pbuf
  • getname
  • str
  • 返回
  • cast
  • cstring
  • const
  • char
  • data

得分解答快速导航

  • 帖主:zcj_csdn
  • hollysky
  • lak47

相关链接

  • C/C++ Blog
  • C/C++类图书
  • C/C++类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo