`
kmplayer
  • 浏览: 508888 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

写个函数,实现strcpy

阅读更多
1,常见的一道面试题目,给出一个实例.
#include <iostream>
#include <stdexcept>
using namespace std;

char* MyStrcpy(char* des, const char* src)
{
    //判断是否自身拷贝
	if (des == src)
		return des;
    //判断是否有空地址
	if ((des == NULL) || (src == NULL))
		return NULL;
	int len_d = strlen(des);
	int len_s = strlen(src);
	//判断目标空间是否足够
	if (len_d < len_s)
		throw runtime_error("not enough space.");
	while (*src)
		*des++ = *src++;
	*des = '\0';
	return des;
}

int main()
{
    char a[]="hello";
    char b[]="word";
    try
    {
        //MyStrcpy(b,a);
        MyStrcpy(a,b);
        cout<<a<<endl;
    }catch(runtime_error& err)
    {
        cout<<err.what()<<endl;
    }
    return 0;
}

分享到:
评论

相关推荐

    C程序_不调用库函数,实现strcpy函数

    在深入探讨如何在C语言中不使用标准库函数实现`strcpy`函数之前,我们先来了解下`strcpy`函数的基本概念及其在标准C库中的作用。`strcpy`是C语言中一个非常重要的字符串操作函数,它用于将一个源字符串复制到目标...

    strcpy等函数实现

    strcpy,strcmp,strlen,strcat函数的实现过程

    C语言程序设计-用函数实现字符串的复制, 不允许用strcpy()函数.c

    C语言程序设计-用函数实现字符串的复制, 不允许用strcpy()函数.c

    实现strcpy

    实现strcpy,strcpy的功能的实现原理

    strstr和strcpy函数实现

    下面是一个简单的`strcpy`函数实现示例: ```c #include #include char *my_strcpy(char *dest, const char *src) { if (dest == NULL || src == NULL) return NULL; while ((*dest++ = *src++) != '\0'); ...

    strcpy函数的用法[总结].pdf

    正确的实现strcpy 函数的代码为: ```c char *strcpy(char *strDestination, const char *strSource) { assert(strDestination && strSource); char *strD = strDestination; while ((*strDestination++ = *...

    自己实现strcpy函数的实现方法

    《自己实现strcpy函数的探索与理解》 在C++编程中,`strcpy`函数是用于复制字符串的一个常用函数,它存在于标准库`&lt;string.h&gt;`中。然而,深入理解其工作原理并尝试自己实现这样的基本功能,对于学习C++语言和内存...

    编写strcpy函数和类String的构造函数、析构函数、赋值函数和重载运算符函数

    主要包含了strcpy函数和类String的构造函数、析构函数、赋值函数和重载运算符函数等代码实现。

    strcpy函数

    接下来,我们分析提供的代码片段,这是一个名为`strcpy_v1`的函数实现,它模仿了`strcpy`的标准行为,但添加了一些额外的安全检查和注释,以提高代码的健壮性和可读性。 ### 安全检查 在函数体开始前,通过`assert...

    常用函数的实现strcpy,memcpy,memmove,strcat,strcmp原型

    本文将深入解析五个常用的C语言函数:`strcpy`、`memcpy`、`memmove`、`strcat`和`strcmp`的实现原理与功能特性,这些函数在处理字符串复制、连接、比较以及内存拷贝时扮演着关键角色。 ### 1. `strcpy` - 字符串...

    strcpy原型

    #### 三、函数实现 下面是根据给定的部分内容给出的 `strcpy` 函数的实现代码: ```c char* strcpy(char* strDest, const char* strSrc) { assert((strDest != NULL) && (strSrc != NULL)); // 断言检查 char* ...

    编写strcpy函数和类String的构造函数、析构函数、赋值函数和重载运算符函数[文].pdf

    strcpy 函数和类 String 的构造函数、析构函数、赋值函数和重载运算符函数都是软件开发中最基本的知识点,它们的实现需要注意内存的分配和释放、字符串的复制和赋值、运算符的语义和边界条件等多方面的考虑。

    C语言 string函数实现

    以下是一个简单的`strlen`函数实现: ```c size_t strlen(const char *str) { size_t len = 0; while (*str++) { len++; } return len; } ``` 2. `strcpy`函数:复制字符串 `strcpy`函数用于将源字符串复制到...

    自行实现的atoi和strcat和strcpy函数.rar_atoi_strcat_strcpy

    在C/C++编程语言中,`atoi`、`strcat`和`strcpy`是三个非常基础且常用的字符串处理函数。这些函数在标准库`&lt;cstdlib&gt;`(C++)或`&lt;stdlib.h&gt;`(C)中定义,但在某些情况下,开发者可能需要自行实现它们,以更好地理解...

    C语言写字符串函数及任意个数求和

    C语言标准库中的`strcpy`函数用于将一个字符串复制到另一个字符串中。我们也可以自定义一个函数来实现相同的功能。例如,可以创建一个名为`my_strcpy`的函数,接受两个字符指针参数,然后逐个字符地将源字符串复制...

    C++中strcpy函数的实现

    以下是一个自定义实现`strcpy`函数的例子: ```cpp char *my_strcpy(char *strDest, const char *strSrc) { if ((strDest == NULL) || (strSrc == NULL)) throw "Invalid argument(s)"; char *strDestCopy = ...

    string函数实现

    除了`strlen`之外,`string`函数实现还包括很多其他常见的操作,例如`strcpy`用于复制字符串,`strcat`用于连接两个字符串,`strcmp`用于比较两个字符串,以及`strstr`用于在一个字符串中查找子串等。这些函数在处理...

    strcpy函数实现简示例命分享

    **函数实现** 如题目给出的简示例所示,`strcpy`函数的实现大致分为以下几个步骤: 1. **参数检查**:首先,通过`assert`函数检查`src`和`dest`指针不为`NULL`,以防止非法操作。 ```c assert(strSrc!=NULL); ...

    strcpy,strcat,strcmp,strlen,strchr

    1. strcpy() 函数实现 strcpy() 函数的作用是将源字符串复制到目标字符串中。下面是strcpy()函数的实现代码: ```c char * strcpy(char * strDest ,const char *strSrc) { assert((strDest!=NULL) && (strSrc !=...

Global site tag (gtag.js) - Google Analytics