码迷,mamicode.com
首页 > 其他好文 > 详细

结构体中string成员的问题

时间:2015-07-22 20:38:40      阅读:127      评论:0      收藏:0      [点我收藏+]

标签:

在结构体中定义字符串的成员的时候要注意
定义成string有时候,在某些程序中给成员赋值会崩溃,但是不确定到底什么情况会崩溃。
运行报错如下:

Program received signal SIGSEGV, Segmentation fault.
0xb665489c in std::string::assign(char const*, unsigned int) ()
from /usr/lib/arm-linux-gnueabihf/libstdc++.so.6
typedef struct
{
    string name;    // 不要这样,有时候会崩溃
    char name2[64]; // 可以这样
    char* pname;    // 可以这样
    int age;
}Student;

所以最好使用字符数组,或者通过指针使用动态内存。

结构体中string成员的问题

标签:

原文地址:http://www.cnblogs.com/zhaojk2010/p/4668223.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!