首页 > 其他 > 详细

结构体中string成员的问题

时间:2015-07-22 20:37:09      阅读:376      评论: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
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!