免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12下一页
最近访问板块 发新帖
查看: 3673 | 回复: 11
打印 上一主题 下一主题

[C++] 新人求解,如何在一个字符串中如何识别¥ [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2013-04-14 12:12 |只看该作者 |倒序浏览
rt
大神求解 谢谢

论坛徽章:
0
2 [报告]
发表于 2013-04-14 12:26 |只看该作者
也就是字符串查找问题了,查找的时候要保证你源字符串是什么编码,那么 ¥ 这个符号用源编码的编码方式表示成一个数组,然后就可以用字符串查找方法查找了。
char  dest[] ="¥";
if( strstr(str, dest))
{
     //has finded
}

论坛徽章:
0
3 [报告]
发表于 2013-04-14 13:56 |只看该作者
回复 2# tansijie
我的字符串是数组,然后我照您说的做了下出现了

error C2446: '==' : no conversion from 'int' to 'char *'
        Conversion from integral type to pointer type requires reinterpret_cast, C-style cast or function-style cast
的错误,请问下是什么回事
   

论坛徽章:
0
4 [报告]
发表于 2013-04-14 14:25 |只看该作者
505300037 发表于 2013-04-14 13:56
回复 2# tansijie
我的字符串是数组,然后我照您说的做了下出现了


你贴上你的源码,我看看。

论坛徽章:
0
5 [报告]
发表于 2013-04-14 14:27 |只看该作者
505300037 发表于 2013-04-14 13:56
回复 2# tansijie
我的字符串是数组,然后我照您说的做了下出现了


你的程序在哪 有== 的语句啊

char* p = strstr(str,dest);
if(NULL == p)
{
      // not find

}else
{
    //find

}

论坛徽章:
0
6 [报告]
发表于 2013-04-14 14:41 |只看该作者
回复 5# tansijie


             //a是目标数组
             char teshu[]={"¥"};
        for (i;i<n;i++)
                {
                        c=("%d",a);
                        if (!( c==32 || c==44 || c==46  || (c>=34 && c<=36)  || (c>=64 && c<=90) || (c>=97 && c<=122) || (c>=48 && c<=57) ))
                        {
                                if ( strstr(a,teshu)==i)
                                        i++;
                                else
                                {
                                cout<<"输入不符合要求"<<endl;break;
                                };
                        };
                           }
  百度上说strstr()返回的是第一次相同时的位置,所以我就这么写了,请问错在哪里

   

论坛徽章:
0
7 [报告]
发表于 2013-04-14 21:55 |只看该作者
505300037 发表于 2013-04-14 14:41
回复 5# tansijie



你的代码这句相表达什么意思,   c=("%d",a);  没看明白。

论坛徽章:
0
8 [报告]
发表于 2013-04-14 21:58 |只看该作者

  1. char str[] ="f13$¥房间俄罗斯方金额";
  2. char  sub_str ="¥";
  3. if(strstr(str,sub_str) != NULL)
  4. {
  5.      //find
  6. }else
  7. {
  8.     //not find
  9. }
复制代码

论坛徽章:
0
9 [报告]
发表于 2013-04-15 12:28 |只看该作者
回复 7# tansijie


    那句话是取a【i】的ascii值

论坛徽章:
0
10 [报告]
发表于 2013-04-15 12:29 |只看该作者
回复 8# tansijie

如果还需要知道¥在数组中的第几位要怎么写,谢谢
   
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP