面试题:优化中的优化(10分满分)
字符串拷贝:是将一个字符串的内容复制到另一个字符串中的操作。
运用函数模拟字符串拷贝:(5分)
模拟字符串拷贝
#include <stdio.h>
void my_strcpy(char* dest, char* str)
{
while (*str != '\0')
{
*dest = *str;
str++;
dest++;
}
*dest = *str;
}
int main()
{
strcpy
字符串拷贝
char arr1[] = "##########";
char arr2[] = "柯南";
my_strcpy(arr1, arr2);
printf("%s\n", arr1);
return 0;
}
对于以上代码进行优化:(6分)
后置++的使用和赋值的灵活使用让代码更加简洁:
//优化模拟strcpy
#include <stdio.h>
void my_strcpy(char* dest,char*scr)
{
while (*dest++ = *scr++)//第二个优化
{
;//*dest++ = *scr++;//第一个优化
}
}
int main()
{
char arr1[] = "##########";
char arr2[] = "柯南";
my_strcpy(arr1, arr2);
printf("%s\n", arr1);
标签:面试题,dest,char,++,strcpy,arr1,字符串,拷贝
From: https://blog.csdn.net/2303_81073778/article/details/137373273