兰舟千帆 2021-12-29 23:15 采纳率: 76.2%
浏览 65
已结题

memcpy函数的问题

我是想试试这个拷贝函数的,是想将ptr1的十个数据拷贝到ptr指向空间上的,但是不知道为啥会输出这样的结果。不知道是哪里没有注意到,希望得到帮助。


#include<stdio.h>
#include<windows.h>
#include<stdlib.h>
#include<string.h>
#define N 10
int main()
{   
    //memet对申请的空间进行字节初始化
    int *ptr = NULL;
    int *ptr1 = NULL;
   
    int i ;
    ptr1 = (int *)malloc(N*sizeof(int));
    ptr = (int *)malloc(20 *sizeof(int));
    if(ptr == NULL|ptr1 ==NULL)
    {
       printf("Space application failed");
        exit(1);
    }
    memset(ptr,0,20*sizeof(int));//全部初始化为0,按照二进制初始化了
    // printf("please enter anumber for ptr\n");
    // for(i =0;i<N;i++)
    // {

    //     scanf("%d",(ptr+i));
    // }
    printf("please enter a number for ptr1:\n");

    for(i = 0;i<N;i++)
    {
        scanf("%d",(ptr1+i));
    }
    // for(i=0;i<N;i++)
    // {
    //     printf("%d,",*(ptr1+i));
    // }
    
    memcpy(ptr,ptr1,10);//可以进行一个数据的拷贝,参数一拷贝目标,参数二拷贝源,参数三拷贝数据个数
    for(i=0;i<N;i++)
    {
        printf("%d",ptr[i]);

    }
    putchar('\n');
    free(ptr);

    system("pause");
    return 0;
}

img

  • 写回答

3条回答 默认 最新

  • 未见花闻 后端领域优质创作者 2021-12-29 23:26
    关注

    void *memcpy( void *dest, const void *src, size_t count );
    该函数的第三个参数是字节数,不是元素个数。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 1月6日
  • 已采纳回答 12月29日
  • 创建了问题 12月29日

悬赏问题

  • ¥15 微信小程序:渲染收货地址时页面不显示
  • ¥20 win7 64位DirectShow提示初始化失败如何解决?
  • ¥20 小规模孤立词识别系统设计
  • ¥15 关于Java对接海康威视车牌识别一体机SDK是否需要固定外网的IP?
  • ¥15 Linux扩容时,格式化卡住了:vgdispaly查看卷组信息,没有输出
  • ¥18 关于#ubuntu#的问题:使用背景-工作职责内有七八台ubuntu系统的电脑,平时需要互相调取资料,想实现把这几台电脑用交换机组成一个局域网,来实现指定文件夹的互相调取和写入
  • ¥20 求一个简易射频信号综测仪
  • ¥15 esp8266 tally灯 接收端改为发射端
  • ¥30 Labview代码调用access 数据库,相同代码其中一个调用不出来是为什么
  • ¥15 基于51单片机的交通灯系统,找改程序有点急