打印

请帮我看一下这个程序。

[复制链接]
1655|4
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
dalujia|  楼主 | 2009-1-20 13:23 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
ST, ui, mt, COM, os
uint8 ComTwoString(uint8 *str1,char *str2,uint8 len)
{
    uint8 i=0;
    for(i=0;i<len;i++)
    {
        if((*(str1++))!=(*(str2++)))
            return 1;
    }
    
    return 0;
}
以下是函数的应用,用在arm7,程序老不稳定,不知是不是这个问题。
str2是个指针,我用“C R ",(一个字符串),而没有用指针,不知道对不对,ads1.2并没有报错。请问大侠这样用可以吗。
if(!ComTwoString(ptr,"C R ",4))            //查看是不是中

相关帖子

沙发
computer00| | 2009-1-20 16:00 | 只看该作者

没啥啊

使用特权

评论回复
板凳
xc_cz| | 2009-1-21 11:12 | 只看该作者

估计错在参数定义上

如果调用的时候参数是字符串常量的话,那定义的时候要加 code,否则调用的时候只能用数组名来做参数

使用特权

评论回复
地板
hotpower| | 2009-1-21 21:53 | 只看该作者

*str++ 不用搞那些括弧

使用特权

评论回复
5
airwill| | 2009-1-22 20:39 | 只看该作者

arm7

不存在 code 的问题.
看样子是楼上的抓到了问题关键了.

((*(str1++)) 的问题, 这样子, 第一个字节就没有比较到了

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

42

主题

145

帖子

1

粉丝