我有一个非常简单的程序,但是这给了我一个seg故障。我一直在努力解决这个问题。请帮忙。std ::用指针交换给出了分段错误
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <vector>
main() {
char *database;
int ndata=4;
database="aaa4baa3bcd2aab5";
char *dummy;
dummy=(char *)malloc(16);
memcpy(dummy,database,16);
printf("%s\n",dummy);
std::swap(database,dummy);
dummy[2]='a';
}
在交换工作正常之前分配到虚拟变量。交换后有什么问题。 感谢
+1,来自`char const *`的`char *`真的很烦人......使用`string`! – 2011-02-14 14:20:12