Discuz! Board

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 1144|回复: 0
打印 上一主题 下一主题

字符串拷贝越界的问题

[复制链接]

1272

主题

2067

帖子

7962

积分

认证用户组

Rank: 5Rank: 5

积分
7962
跳转到指定楼层
楼主
发表于 2020-1-1 14:49:41 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
        typedef struct CLT_MDN_IMSI_ROAMING
{               
        char START_TIME[MAX_DATETIME_LEN];
        char MDN[12];
        char IMSI[16];
        char VENDOR[7];
        short IMSIinDB;
        } CltMdnImsiRoaming;
        CltMdnImsiRoaming* first_rec
        //051085857272像这种超长的加上-1后,就会取前11位,舍弃后面的2,若不加-1则会造成舍弃前面的0,且与后面的IMSI连在一起,出现类似51085857272460036551056650这样的数
        strncpy(first_rec->MDN, scdr->MDN.c_str(), sizeof(first_rec->MDN)-1);       
        strncpy(first_rec->IMSI, scdr->IMSI.c_str(), sizeof(first_rec->IMSI)-1);       

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|firemail ( 粤ICP备15085507号-1 )

GMT+8, 2024-11-26 09:05 , Processed in 0.059336 second(s), 19 queries .

Powered by Discuz! X3

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表