专注收集记录技术开发学习笔记、技术难点、解决方案
网站信息搜索 >> 请输入关键词:
您当前的位置: 首页 > C语言

一个很菜的有关问题,希望得到指点

发布时间:2011-06-28 16:13:34 文章来源:www.iduyao.cn 采编人员:星星草
请教高手一个很菜的问题,希望得到指点
下面这些代码我在编译的时候总是提示这行 if((strcmp(*p, "X ")==0)   ||   (strcmp(*p, "x ")==0))

下面的错误是D:\xu\ACCP\0101\02.cpp(18)   :   error   C2664:   'strcmp '   :   cannot   convert   parameter   1   from   'char '   to   'const   char   * '
  这是什么原因呀
#include   "stdio.h "
#include   "string.h "
int   countx(char   *p);
void   main()
{
char   str[50];
printf( "请输入一行英文字符串: ");
gets(str);
printf( "字符串中x的个数是%d ",countx(str));


}
int   countx(char   *p)
{
int   count=0;
while(*p!= '\0 ')
{
if((strcmp(*p, "X ")==0)   ||   (strcmp(*p, "x ")==0))
count++;
p++;
}
return   count;
}

------解决方案--------------------
而且你程序有问题,你现在判断的是单个字符而不是字符串,因此不用STRCMP函数,我把你程序改了如下:
#include "stdio.h "
#include "string.h "
int countx(char *p);
void main()
{
char str[50];
printf( "请输入一行英文字符串: ");
gets(str);
printf( "字符串中x的个数是%d ",countx(str));


}
int countx(char *p)
{
int count=0;
while(*p!= '\0 ')
{
if(*p== 'x '||*p== 'X ')

count++;
p++;

}
return count;
}
友情提示:
信息收集于互联网,如果您发现错误或造成侵权,请及时通知本站更正或删除,具体联系方式见页面底部联系我们,谢谢。

其他相似内容:

热门推荐: