【发布时间】:2012-03-30 14:29:51
【问题描述】:
获取以下代码的分段错误。请指教。
struct columns {
char* c_name;
char* c_type;
char* c_size;
};
int main(int argc, char* argv[])
{
int column_num = 3;
struct columns col[10];
//columns *col = (columns*) malloc (sizeof(columns) * column_num);
strcpy(col[0].c_name, "PSID");
strcpy(col[0].c_type, "INT");
strcpy(col[0].c_size, "4");
}
我正在使用 2 种方法为列结构分配空间,但仍然出现分段错误。我错过了什么吗?
【问题讨论】:
-
这是在 SO...上被问得最多的问题...
-
C 还是 C++?这很重要,您(“惯用”)的方式在两种语言中是不同的。
-
你的 main 需要一个 return 声明。
-
如果您正在编写 C++,请使用
std::string。
标签: c++ c segmentation-fault malloc