【C进阶】一不小心就被'strlen'给坑了!
1、聊一聊
和bug菌同龄的小伙伴在听这首歌的时候,脑海中应该很有画面感吧,转眼间这首歌曲已经有20年了!
今天主要是跟大家分析一下C语言strlen需要注意的几点,编码的时候稍微不注意就可能掉坑,如果大家还有遇到其他的坑记得文末分享留言!
2、strlen掉坑实例
就先贴上一个掉坑的例子,然后在跟大家总结分享下原因和避坑指南:
编码目标:
根据字符串起点打印不同偏移(Offset)到结尾的字符串,如果Offset为负数就向前移动并打印到字符串末尾。
掉坑示例:
1#include <stdio.h>
2#include <string.h>
3/***************************************
4 * Fuction:sGetStr
5 * Decri :打印相应位置到末尾的字符串
6 * Author :(欢迎关注公众号:最后一个bug)
7 ***************************************/
8int sGetStr(const char * str,int offset)
9{
10 if(offset > strlen(str))
11 {
12 printf('offset Over Error!!\n');
13 }
14 else
15 {
16 printf('%s\n',str + offset);
17 }
18}
19
赞 (0)