拷贝内存的问题,请教高手!

来源:百度知道 编辑:UC知道 时间:2024/06/30 23:15:01
char* shiString;
shiString = malloc(5);
memcpy(shiString,"法袍\0",5);
我想把“法袍”拷贝进shiString,如何写才是最好的?
各位高手,我要的是用内存拷贝,而不是字符串拷贝。
字符拷贝函数会自动把字符串的结束符'\0'给拷贝进去。但是内存拷贝函数呢,会不会也给自动拷贝进去?
所以不知道用memcpy函数拷贝怎么写才是最优的,请高手们帮帮忙

#include <string.h>
#include<stdio.h>
#include<malloc.h>
void main()
{
char* shiString;
shiString = (char*)malloc(5);
strcpy(shiString,"法袍");
printf("%s\n",shiString);

}

要不你用wchar_t *a[3] = {L"我", L"你", L"他"}; 这种方式

char* shiString;
shiString = malloc(4);
memcpy(shiString,"法袍",4);

strcpy(shiString, "法袍");