标题:新年快乐!返回值问题
取消只看楼主
fuyucao
Rank: 1
等 级:新手上路
帖 子:67
专家分:7
注 册:2011-10-17
结帖率:100%
已结贴  问题点数:30 回复次数:6 
新年快乐!返回值问题
先祝大家龙年大吉!
char  *regcompx(const char* str)
  {
     smatch what;
     char buf2[255];
     char   *pstr,*pst;
     pstr=NULL;
   //cpos = strrchr(lbody, '-');//在lbody中查找'-'最后一次出现的位置,最后返回指向'-'的指针
  if((strrchr(str, '-')))
    {
     regex expression("\\w{6}-\\w{6}");//正则表达式
     if(regex_search(str, what, expression))//在str中查找expression的字串 并放入到what里面
     {
          // bool s=regex_match(str, what, expression);
          for(int i=0;i<what.size();i++)
          printf(" %s\r\n", what[i].str().c_str());
          //cout<<"str: " <<what[i].str()<<endl; //cout<< " "<<endl 输出并换行 endl相当于换行
          int len = 0;
          char key[]={0,2,0,0,9,3,5,1,9,8,0,0,9,1,7,5},buf[255]= {0};
          ::memset(buf, 0, sizeof(buf));//对较大的结构体或者数组(buf)进行清零操作
          :: strcpy(buf, what[0].str().c_str());
          Des_Go(buf, buf, 13, key, sizeof(key), ENCRYPT);
          strncpy(buf2,buf,255);//将buf中最多255个字符复制到buf2中
          len = ::strlen(buf);
          if(len == 16)
          {
            CString st;
            for(int i = 0; i < len; i++)
            {
                BYTE tmp;
                CString st1;
                tmp = buf[i];
                st1.Format("%X%X",(tmp >> 4) & 0x0f, tmp & 0x0f);
                st = st + st1;
            }
             pstr=(LPSTR)(LPCTSTR)st;//CString转化为char*
           }
     }     
      else
      {

      }
      //return 0;
        // pst = pstr;
  }
  return pstr;
}
部分代码如上,函数能够编译通过,但最后返回的pstr为乱码,请各位帮帮忙,O(∩_∩)O谢谢
搜索更多相关主题的帖子: str expression 表达式 
2012-02-02 11:05
fuyucao
Rank: 1
等 级:新手上路
帖 子:67
专家分:7
注 册:2011-10-17
得分:0 
回复 2楼 闲出屁
直接返回它会报错:
error C2440: 'return' : cannot convert from 'class CString' to 'char *'
2012-02-02 11:25
fuyucao
Rank: 1
等 级:新手上路
帖 子:67
专家分:7
注 册:2011-10-17
得分:0 
回复 3楼 hahayezhe
  先谢谢了
我把st改为全局变量还是不行了
2012-02-02 11:30
fuyucao
Rank: 1
等 级:新手上路
帖 子:67
专家分:7
注 册:2011-10-17
得分:0 
回复 7楼 hahayezhe
报错:
error C2039: 'Getbuffer' : is not a member of 'CString'
2012-02-02 11:40
fuyucao
Rank: 1
等 级:新手上路
帖 子:67
专家分:7
注 册:2011-10-17
得分:0 
回复 6楼 闲出屁
好嘞,我试试
2012-02-02 11:52
fuyucao
Rank: 1
等 级:新手上路
帖 子:67
专家分:7
注 册:2011-10-17
得分:0 
回复 14楼 爱德华
我比较喜欢你的名字,开个玩笑,O(∩_∩)O谢谢
2012-02-02 17:33
fuyucao
Rank: 1
等 级:新手上路
帖 子:67
专家分:7
注 册:2011-10-17
得分:0 
搞定了,O(∩_∩)O谢谢各位,因为我用的是win32,所以貌似GetBuffer不能用,我还是暂时用的“闲出屁”童鞋的,谢谢各位了
2012-02-02 17:35



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-360274-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.815532 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved