关闭

数组越界不等于异常

标签: struct
1756人阅读 评论(3) 收藏 举报
分类:
察看如下代码:
struct TestStruct
{
       char str[8];
       int i;
};
char str[8] ="abcdefg";
TestStruct test[2]={0,1};
for(int i = 0 ;i<=2;i++)
{
test[i].i = i+1;

       printf("&test[%d] = 0x%X/n",i,&test[i]);

}
       这段代码给出了的循环有数组越界。但是并不会出现异常,通常这样的错误发现不了。但是后果严重,数组修改了栈的前面,这是灾难性的,因为不知道什么地方被修改了。错误不可怕,可怕的是难以发现,这样的错误一定要避免,否则等着挠头吧。
0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:612549次
    • 积分:9788
    • 等级:
    • 排名:第1782名
    • 原创:340篇
    • 转载:141篇
    • 译文:0篇
    • 评论:69条
    最新评论