求助一道c语言指针编程题 15

就是这道15题后面的是我的代码,在我自己的电脑上无法运行成功,想知道代码中还存在哪些问题。... 就是这道15题 后面的是我的代码,在我自己的电脑上无法运行成功,想知道代码中还存在哪些问题。 展开
 我来答
飞雪无痕HYL
2017-05-19
知道答主
回答量:12
采纳率:0%
帮助的人:4.1万
展开全部
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
/* FUNCTION:
 * 将字符串_src插入字符串_dest指定位置n处,其中n与字符串下标一致
 * 返回值:
 * 成功:返回目标字符串首地址
 * 失败:返回NULL
 * */
char *insert(char *_dest, char *_src, int n)
{
    char tmp[256];
    int len;
    if (_dest==NULL || _src==NULL || n<0)
    {
        printf("参数不合法\n");
        return NULL;
    }
    memset(tmp,0x00, sizeof(tmp));
    memcpy(tmp, _dest, n);
    len = strlen(tmp);
    len += snprintf(tmp+strlen(tmp), sizeof(tmp)-strlen(tmp), "%s%s", _src, _dest+n);
    memset(_dest, 0x00, len+1);
    memcpy(_dest, tmp, len);
    
    return _dest;
}

/*测试函数*/
int main()
{
    char arry1[128];
    char arry2[64];
    char *p = NULL;
    memset(arry1, 0, sizeof(arry1));
    memset(arry2, 0, sizeof(arry2));
    strcpy(arry1, "ABCDEFGHIGKLMN");
    strcpy(arry2, "123456");
    printf("arry1[%s]\n", arry1);
    printf("arry2[%s]\n", arry2);
    p = insert(arry1, arry2, 4);
    if (p == NULL)
    {
        printf("函数调用失败\n");
        return -1;
    }
    else
    {
        printf("New Arry[%s]\n", arry1);
    }
    return 0;
}

希望有帮到你。

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式