字符串复制、测字符串的有效长度
来源:互联网 发布:大数据用户画像 编辑:程序博客网 时间:2024/05/17 21:05
一、字符串复制
1.
void Mystrcpy1(char *des,char *src)//1
{
int i;
for(i=0;src[i]!='\0';i++)//1
{
des[i] = src[i];//*(des+i) = *(src+i);
}
des[i] = '\0';
}
{
int i;
for(i=0;src[i]!='\0';i++)//1
{
des[i] = src[i];//*(des+i) = *(src+i);
}
des[i] = '\0';
}
void Mystrcpy2(char *des,char *src)
{
while(*src != '\0')//2
{
*des = *src;
src++;
des++;
}
*des = '\0';
}
{
while(*src != '\0')//2
{
*des = *src;
src++;
des++;
}
*des = '\0';
}
void Mystrcpy3(char *des,char *src)
{
int i;
for(i=0;*(src+i)!='\0';i++)
{
*(des+i) = *(src+i);
}
*(des+i) = '\0';
}
{
int i;
for(i=0;*(src+i)!='\0';i++)
{
*(des+i) = *(src+i);
}
*(des+i) = '\0';
}
void Mystrcpy4(char *des,char *src)
{
while(*des++ = *src++) ;//
}
{
while(*des++ = *src++) ;//
}
void Mystrcpy5(char *des,char *src)
{
//参数检查,健壮性(鲁棒性)
assert(des!=NULL && src!=NULL);//assert
if(des==NULL || src==NULL)
{
return ;//exit退出整个程序
}
{
//参数检查,健壮性(鲁棒性)
assert(des!=NULL && src!=NULL);//assert
if(des==NULL || src==NULL)
{
return ;//exit退出整个程序
}
while(*des++ = *src++) ;
}
char *Mystrcpy6(char *des,char *src)
{
char *p = des; //p保存了des(这是个数组)的首地址
assert(des!=NULL && src!=NULL);
if(des==NULL || src==NULL)
{
return NULL;
}
}
char *Mystrcpy6(char *des,char *src)
{
char *p = des; //p保存了des(这是个数组)的首地址
assert(des!=NULL && src!=NULL);
if(des==NULL || src==NULL)
{
return NULL;
}
while(*des++ = *src++) ;
return p;
}
}
int main()
{
char *src = "123";
char des[20];//src不可改变,des是src拷进的,所以值发生变化,不能用char *des
Mystrcpy(des,src);
return 0;
}
char *Mystrcpy(char *des,const char *src)
{
assert(des!=NULL && src!=NULL);
{
assert(des!=NULL && src!=NULL);
int i;
for(i=0;src[i]!='\0';i++)
{
des[i] = src[i];
for(i=0;src[i]!='\0';i++)
{
des[i] = src[i];
//src[i] = '\0';
}
des[i] = '\0';
}
des[i] = '\0';
return des;
}
}
二、测字符串的有效长度
1.
return i;int Mystrlen(const char *str)
{
assert(str != NULL);
return i;int Mystrlen(const char *str)
{
assert(str != NULL);
int i = 0;
while(*str!='\0')
{
i++;
str++;
}
/*for(i=0;str[i]!='\0';i++)
{
;
}*/
}
while(*str!='\0')
{
i++;
str++;
}
/*for(i=0;str[i]!='\0';i++)
{
;
}*/
}
}
int main()
{
printf("%d\n",Mystrlen("abcd"));
return 0;
}
return 0;
}
2.sizeof与strlen
int main()
{
char str1[100] = "abcde";
char str2[] = "abcde";
char str3[100] = "abcdef\0ijk\n";
char str4[] = "abcdef\0ijk\n";
char *str5 = "abcde";//char * str5[6];
char *str6 = "abcdef\0ijk\n";
printf("%d,%d\n",sizeof(str1),strlen(str1));//100,5
printf("%d,%d\n",sizeof(str2),strlen(str2));//6,5
printf("%d,%d\n",sizeof(str3),strlen(str3));//100,6
printf("%d,%d\n",sizeof(str4),strlen(str4));//12,6;
printf("%d,%d\n",sizeof(str5),strlen(str5));//4,5
printf("%d,%d\n",sizeof(str6),strlen(str6));//4,6
{
char str1[100] = "abcde";
char str2[] = "abcde";
char str3[100] = "abcdef\0ijk\n";
char str4[] = "abcdef\0ijk\n";
char *str5 = "abcde";//char * str5[6];
char *str6 = "abcdef\0ijk\n";
printf("%d,%d\n",sizeof(str1),strlen(str1));//100,5
printf("%d,%d\n",sizeof(str2),strlen(str2));//6,5
printf("%d,%d\n",sizeof(str3),strlen(str3));//100,6
printf("%d,%d\n",sizeof(str4),strlen(str4));//12,6;
printf("%d,%d\n",sizeof(str5),strlen(str5));//4,5
printf("%d,%d\n",sizeof(str6),strlen(str6));//4,6
}
阅读全文
1 0
- 字符串复制、测字符串的有效长度
- 字符串的复制 拼接 长度
- 指定字符串长度的复制
- 巧测字段最大长度
- 巧测字段最大长度
- 字符串问题---括号字符串的有效性和最长有效长度
- c语言:字符串的连接,复制,长度
- 求字符串的长度,字符串复制,字符串比较
- 括号字符串的有效性和最长有效长度
- 括号字符串的有效性和最长有效长度
- 根据输入的字符串,判断并输出有效的字符串的长度,和该字符串。vc++
- 字符串复制,求长度,求子串
- 字符串的连接、复制、求长度、比较函数。
- 字符串的复制,长度计算,单词反序输出
- 字符串的一些基本操作,复制,长度,子串查找,单词反转,比较,字符串反转,删除指定字符。
- 最长有效括号的长度
- 最长有效括号的长度
- ”最长有效括号的长度“
- ReactNative和Android共同开发基础流程
- PySC2 --- 星际争霸Ⅱ 学习环境搭建
- C/C++--虚函数
- use "rootsift= sqrt( sift / sum(sift) )" to improve object retrieval
- Java基础知识
- 字符串复制、测字符串的有效长度
- Python高级特性-切片(Slice)
- CocoaPods的安装及使用
- 素数筛法
- 狗狗识别-百度西安交通大学大数据比赛baseline=0.2代码
- C/C++面试知识点总结(一)
- HDU3388
- cp命令总结
- C/C++--私有继承