strlen的使用问题

原创 2015年11月19日 19:02:29

最近在做项目时,用strlen测试的字符串长度传递到另外一个函数中,结果由于含有'0'导致出错。应该是遇到了我下面的第二种情况,测试代码如下:

#include<stdio.h>
#include<string.h>


int main()
{
int len1,len2,len3;
char *str = "hello\0world";
char str2[] = {'h','e','l','l','o',0,'w','o','r','l','d'};
char *str3 = "hello0world";


len1 = 0;
len2 = 0;
len1 = strlen(str);
len2 = strlen(str2);
len3 = strlen(str3);
printf("len1 = %d,len2 = %d,len3 = %d \r\n",len1,len2,len3);




return 0;
}


测试结果:


版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

海思中fifo的使用及c语言中fifo的使用以及c中关于字符串的说明%s以及strlen注意问题

题记:最近在调试想把海思的视频数据先存储到fifo中,然后取数据的时候再从fifo中取出数据,这样来进一步使得视频播放更加流畅。 1 实现fifo的demo //===================...

sizeof与strlen使用常见问题

1.sizeof操作符的结果类型是size_t,它在头文件中typedef为unsigned int类型。该类型保证能容纳实现所建立的最大对象的字节大小。 2.sizeof是算符,strle...

【经典面试题】有关sizeof、strlen处理字符串的问题

先贴上一份完整的代码: #include #include void func(char str[50]) { printf("A %d B %d ",sizeof(str), strl...

fgets()函数输入的长度,以及strlen()函数返回的长度问题

fgets()函数输入的长度, 以及strlen()函数返回的长度问题, 在此做下测试(visual studio 2013): #include #include int main(void)...

C语言sscanf和sprintf输入输出使用及Strlen、Memset解释

sscanf() - 从一个字符串中读进与指定格式相符的数据。 Sprintf()字符串格式化命令 主要功能是把格式化的数据写入某个字符串中。sprintf 是个变参函数

sizeof和strlen的使用方法和区别

C语言的sizeof和strlen  strlen是函数,而sizeof是算符。strlen需要进行一次函数调用,而对于sizeof而言,因为缓冲区已经用已知字符串进行了初始化,起长度是固定的,...

借刀杀人,不使用任何中间变量实现strlen

2009腾迅校园招聘笔试题:不使用中间变量求const字符串长度,即实现求字符串长度库函数strlen函数。函数接口声明如下:int strlen(const char *p);   思路分析: ...

[C语言]strcat strstr strcpy strcmp strlen 的实现与使用

函数名:strcat  功能:把src所指字符串添加到dest结尾处(覆盖dest结尾处的'\0')并添加'\0'。 说明:src和dest所指内存区域不可以重叠且dest必须有足够的空间来容纳s...

strlen,strcpy,strcat,strstr,strcmp,strchr函数的使用和注意事项

strcpy源码: char *strcpy(char *strDes, const char *strSrc) { assert((strDes != NULL) && (str...

c语言006-sizeof/strlen的使用和区别

sizeof是C/C++中的一个操作符(operator),简单的说其作用就是返回一个对象或者类型所占的内存字节数。语法 sizeof有三种语法形式,如下: sizeof(object);//si...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)