• 6667阅读
  • 3回复

Qstring的成员函数中有没有能返回字符串首字符的地址的? [复制链接]

上一主题 下一主题
离线nzp
 
只看楼主 倒序阅读 楼主  发表于: 2006-05-22
QString::latin1()返回的是一个const char*把它赋给一个char*的变量时提示:
invalid conversion from"const char*"to"char*".
望高手指教!
[ 此贴被XChinux在2006-05-22 12:21重新编辑 ]
离线shiroki

只看该作者 1楼 发表于: 2006-05-22
你看看QString的api list不难发现, 它的接口没有一个返回char*的
显然QString的内部buffer不允许外部修改。

你还不如说说你想实现什么功能。 QString有很多字符串操作的方法可以用
--
shiro is White
ki is tree
http://www.cuteqt.com
论坛 http://www.cuteqt.com/bbs
博客 http://www.cuteqt.com/blog
博客镜像: http://sites.cuteqt.com/cuteqt
Linux/Qt/嵌入式讨论群 http://qun.qq.com/air/5699823
离线nzp
只看该作者 2楼 发表于: 2006-05-22
我要把下面的C源代码放到qt的程序代码里,其中next用来存放字符串中字符的地址.
c代码:
  iv_read (FILE *filein)
{
  ....
  int width;
  chat *next;
  char input[256];
  char word[256];
  char wordm1[256];

  ....


  for(;;)
  {
    if( fgets( input,256,filein )== NULL )
    break;
    next=input;
    for(;;)
      {
        strcpy(wordm1,word);
        strcpy(word," ");
        count=sscanf(next,"%s%n",word,&width);
        next=next+width;
        .....
      }

      ....
  }
}
我现在已把此函数的参数改为const qstring &filein,已经通过调用qtextstream::readline实现读取一行,但是如何给char*的next赋值不太清楚!
离线XChinux

只看该作者 3楼 发表于: 2006-05-23
你可以通过将QString型转化成QByteArray型,然后通过QByteArray的constData()函数来获取char *型字符串。
二笔 openSUSE Vim N9 BB10 XChinux@163.com 网易博客 腾讯微博
承接C++/Qt、Qt UI界面、PHP及预算报销系统开发业务
快速回复
限100 字节
 
上一个 下一个