char *temp1 = 0;
char *buf1 = "123456789AB";
temp1 = (char*)malloc(10 * sizeof(char));
memset(temp1,'0',10); //使用前初始化,malloc中的值全为 字符0
memcpy(temp1+4,buf1,1);
std::cout << "*ptr=" << sizeof(temp1) << "_" << strlen(temp1) << "_" << temp1 << std::endl;
free(temp1);
memset(temp1,0,10); //清空,注意这句会让指针指向空指针,打印指针的值为0
std::cout << sizeof(temp1) << strlen(temp1) << temp1 << std::endl;
malloc,memset,memcpy使用
最新推荐文章于 2024-11-02 14:05:25 发布
本文详细介绍了如何在C++中使用malloc动态分配内存,memset进行初始化,以及memcpy进行数据复制。特别强调了使用后要释放内存并防止空指针问题。
摘要由CSDN通过智能技术生成