这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » 嵌入式开发 » MCU » 关于字符串数组和字符串比较的问题

共4条 1/1 1 跳转至

关于字符串数组和字符串比较的问题

菜鸟
2008-07-22 11:56:32     打赏
问题:从串口收上来的数据(位数不确定的(<10),但是有结束符做标志),存放在一个字符串数组里,然后想这个数组和一个字符串比较。例如我收到的数组是“BDR9600*”,*代表结束符,然后我要识别这个数组的内容,于是和字符串“BDR9600*”比较,问题就是这个比较操作怎么做,C语言里有“strcmp”指令,现在在单片机里怎么实现啊???
备注:我用的1A片子,RAM不够,所以不可能把所有字符串用全局变量存起来!!



关键词: 关于     字符串     数组     比较     问题    

菜鸟
2008-07-22 16:13:17     打赏
2楼

没人回答么?瑞萨技术支持呢???


菜鸟
2008-07-23 12:10:41     打赏
3楼

您是不是可以设一个字符串数组,把BDR9600*存放在字符串数组里,然后分别比较两个字符串数组里各个元素是否相等?

我没有做过类似的比较,只是提个建议,您可以试一下。
如果您还有问题,欢迎您继续提问。我们一定尽快给您答复。


菜鸟
2008-07-23 13:33:32     打赏
4楼

有2种方法:
1  自己写程序,把那些需要比对的固定字符串放在ROM中。比如。
     const char string1[] = "BDR9600*";
     
     _Bool strcmp( char * src_str, char * dest_str)
    {
             char temp_len = sizeof( dest_str );
             while(temp_len > 0)
            {
                   if ( *src_str != *dest_str)
                   {
                          return 0;
                   }
                   src_str ++;
                   dest_str ++;
           }
           return 1;
    }

2 使用瑞萨公司提过的库函数。
#include "string.h"
里面有strcmp的函数。
"string.h"在C:\Program Files\Renesas\HEW\Tools\NC30WA\INC30里面


共4条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]