通常,如果我们要把一个缓冲区拷贝到另一个缓冲区的时候,需要知道源缓冲区的有效长度,但对于某些特殊的字符串,strlen返回的长度和我们的预期是不太一样的,关键在于字符串中间出现了 /0 .
example:
#include<iostream.h>
#include <stdio.h>
#include <string.h>
void main()
{
char a[100] = {"你好/0大家好"};
cout<<strlen(a)<<endl;
cout<<a<<endl;
getchar();
}
这段代码的输出结果为
4
你好