首页 > 其他分享 >c语言:模拟字符串拷贝功能(strcpy),面试题

c语言:模拟字符串拷贝功能(strcpy),面试题

时间:2024-04-04 16:33:14浏览次数:26  
标签:面试题 dest char ++ strcpy arr1 字符串 拷贝

面试题:优化中的优化(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

相关文章

  • 数据库mysql面试题
    数据库(mysql)面试题主要从优化进行提问,还有事务以及其他进行提问。优化分别从四个方面进行讲述:主要从定位慢查询、SQL执行计划、索引(储存索引、索引底层数据结构、聚簇和非聚簇索引、索引创建原则、索引失效场景)和SQL优化经验进行概述 Q1:如何定位慢查询?导致慢查询的原因:......
  • Java面试题:Java集合框架:请简述Java集合框架的主要组成部分,并解释它们之间的关系。
    Java集合框架(JavaCollectionsFramework)是一组用来表示和操作集合的类的集合,它提供了用于存储不同类型对象的标准化接口和类。Java集合框架的主要组成部分包括以下几个部分:集合接口(CollectionInterface):这是所有集合类的根接口,定义了集合的基本操作,如添加、删除、判断存在......
  • Java面试题:解释Java泛型的主要用途,并说明泛型擦除的概念。
    Java泛型(Generics)的主要用途是提供一种编写可重用且类型安全的代码的方法。它们允许在编程时使用类型参数,这些类型参数可以在运行时被具体的类或接口替换。泛型的主要优点包括:类型安全:泛型编译时会进行类型检查,确保在运行时使用的是正确的类型,从而减少类型转换错误。代码复......
  • Java面试题:简述数据库性能优化的常见手段,如索引优化、SQL语句优化等。
    数据库性能优化是确保数据库系统高效运行的关键步骤。以下是一些常见的数据库性能优化手段:1.索引优化:创建索引:为经常用于查询条件的字段创建索引,可以大大加快查询速度。避免过多索引:虽然索引可以加快查询,但过多索引会减慢写操作,并占用额外空间。使用复合索引:当查询条件包......
  • Java面试题:解释微服务架构的概念及其优缺点,讨论微服务拆分的原则。
    微服务架构的概念:微服务架构是一种设计方法,它将应用程序分解成一组独立的、可协作的服务,每个服务对应一个具体的业务功能。这些服务可以独立部署、扩展和维护,通常通过轻量级的通信机制(如HTTPRESTfulAPI)相互协作。微服务架构使得服务变得更加模块化,各服务之间相互独立,不受......
  • 常见面试题--动态规划介绍(附C++源码实现)
    关注我,持续分享逻辑思维&管理思维;可提供大厂面试辅导、及定制化求职/在职/管理/架构辅导;有意找工作的同学,请参考博主的原创:《面试官心得--面试前应该如何准备》,《面试官心得--面试时如何进行自我介绍》, 《做好面试准备,迎接2024金三银四》。【图解《程序员面试常见的十大算法......
  • 面试题总结综合
    煞笔!终究转移到这是吗?1.自我介绍你好我叫杨凯23年毕业于河北工业大学211计算机科学与技术专业这次应聘的是贵公司测试工程师的(Java后端研发工程师的)岗位大学期间参加过创新创业大赛以及acm的培训(有两年的开发经验,其中一年在实习)做过的项目有实习时做的接口管理......
  • 深拷贝、浅拷贝
    浅拷贝: 类实现ICloneable接口例如:classEmployee:ICloneable{publicstringID{get;set;}publicintAge{get;set;}publicDepartmentDepartmentName{get;set;}//实现ICloneable接口的Clone方法publicobjectClone(){retur......
  • http前端面试题
    http状态码状态码分类1xx服务器收到请求2xx成功3xx重定向4xx客户端错误5xx服务器错误常见状态码http协议中的状态码有很多,但只有一些是我们常用的。也是面试常考的。200成功301永久重定向(同时返回一个location,写明重定向的url)。例如一个网站的网址永久性的切换......
  • 理解列表的引用和浅拷贝,体会path和path[:]的不同
    文章目录零、从哪里来一、先看算法题(回溯法)二、扩展三、总结零、从哪里来引用与浅拷贝与深拷贝记得看这篇文章总结最后,不亏,没看完的话,你会后悔一辈子。一、先看算法题(回溯法)给你一个整数数组nums,其中可能包含重复元素,请你返回该数组所有可能的子集。解集不能......