专栏中心

EEPW首页 > 专栏 > C语言字符串处理函数应用

C语言字符串处理函数应用

发布人:电子禅石 时间:2017-12-29 来源:工程师 发布文章

C 只要涉及到通信协议, 主要就是看,对字符串处理函数的灵活应用。现归纳几条在实际项目中应用的的。

  1. sprintf  主要来封装 数据,进行TCP 传输。

     sprintf((char*)sendDataBuf, "{\"code\":102,\"sn\":\"%d\",\"plantId\":%d,\"humidity\":%d,\"illumination\":%d,\"temperature\":%d,\"lightTime\":%d}\n", \
                                        sncode,PLANT_ID,tempHumi,tempLight,tempTemp,TimeOfLight);  

  2. strstr 查找一个字符串是否是另一个字符串的子串 ,很好的应用是,蓝牙传过来一堆数据,包头是重要的命令识别点,通过strstr 来区分不同的命令。

          strncpy(command,p_data,length);
          for(t=0;t<7;t++)
        {
             temp = strstr(command,COMMAND_ARRAY[t]);
            if(temp != NULL)
            {
                command_ID=t;
                break;
            }
        }

  3.strncmp 比较两个字符串是否相同

err_code = strncmp(PASSWORD_DEFAULT,command,length);

4.一些mem的常用函数。

void *memcpy(void *dest, const void *src, size_t n);

从源src所指的内存地址的起始位置开始拷贝n个字节到目标dest所指的内存地址的起始位置中。

int memcmp(const void *buf1, const void *buf2, size_t count); 
比较buf1和buf2前面count个字节大小. 
返回值< 0, 表示buf1小于buf2; 
返回值为0, 表示buf1等于buf2; 
返回值> 0, 表示buf1大于buf2. 

int memicmp(const void *buf1, const void *buf2, size_t count); 

比较buf1和buf2前面count个字节. 与memcmp不同的是, 它不区分大小写. 

返回值同上.


*博客内容为网友个人发布,仅代表博主个人观点,如有侵权请联系工作人员删除。

关键词:

相关推荐

《嵌入式系统设计》14-1-划分及作业布置

视频 2010-02-02

为uCOS51 增加Shell 界面

英伟达新G-Sync Pulsar系列显示器,从人眼视网膜层面攻克运动模糊难题

《嵌入式系统设计》19-Linux嵌入式系统设计(开始到Linux Bootloader)

视频 2010-02-02

微型热敏打印机

美光宣布3610 SSD,这是业界首款面向OEM厂商的PCIe 5.0 QLC SSD——在一块微小的单面M.2 2230中提供4TB存储,性能达到11,000 MB/s

CES 2026:美光推出面向客户端计算的PCIe Gen5 G9 QLC SSD

微软研发致胜策略

NVIDIA创始人兼CEO黄仁勋荣获技术领域最高荣誉——2026年IEEE荣誉奖章

《嵌入式系统设计》17-嵌入式系统设计U-BOOT(跳转到stage2的C入口点到嵌入式系统Bootloader)

视频 2010-02-02

伟福调试软件E2000w 3.2版

AMD发布Instinct MI500,性能比MI300X高出1000倍——为YottaFLOPS数据中心时代奠定了基础

美光推出全球首款面向客户端计算的 PCIe 5.0 QLC SSD

事关2nm制程竞争 高通有望时隔5年重启三星代工

《嵌入式系统设计》15-嵌入式系统设计U-BOOT(Bootloader的一些介绍)

视频 2010-02-02

《嵌入式系统设计》18-嵌入式系统设计U-BOOT(LILO到连接脚本文件)

视频 2010-02-02

精华!黄仁勋CES 2026记者会:揭秘大杀器Vera Rubin ,谈为什么买Groq

估值四个月接近翻倍!报道称Anthropic计划按3500亿美元融资百亿美元

机器人 2026-01-08

伟福的e6000w

CES 2026:三星地位遭TCL取代?主舞台成中国大厂顶尖对决

消费电子 2026-01-08
更多 培训课堂
更多 焦点
更多 视频

技术专区