我正在尝试使用memcpy将一个字符串复制到另一个字符串中,代码如下:
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
typedef struct fullName
{
char* firstName;
char* lastName;
} NAME;
int main()
{
NAME myName, hisName;
myName.firstName = "aaaaaaa";
hisName.firstName = "bbbbbb";
memcpy(myName.firstName, hisName.firstName, sizeof(hisName.firstName));
printf("myName.firstName = %s\n", myName.firstName);
printf("hisName.firstName = %s\n", hisName.firstName);
}
Run Code Online (Sandbox Code Playgroud)
并且它给出了分段错误(核心转储)运行程序之后的错误我试图声明firstName并lastName作为指向char数组的指针而不是指向char的指针,但错误仍然存在.我错过了什么?!请帮忙......
仅供参考.我正在使用Ubuntu 14,我正在使用gcc(Ubuntu 4.8.2-19ubuntu1)......