社区
C++ 语言
帖子详情
C++ 越界问题
malone1
2011-08-19 10:15:24
struct A
{
int m_b;
int m_c;
}
char * buf= new char;
A * Aptr= (A *)buf;
Aptr->m_b=4;
Aptr->m_c=5;
这样程序虽然可以运行,但是存在越界问题?
...全文
260
16
打赏
收藏
C++ 越界问题
struct A { int m_b; int m_c; } char * buf= new char; A * Aptr= (A *)buf; Aptr->m_b=4; Aptr->m_c=5; 这样程序虽然可以运行,但是存在越界问题?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
16 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
malone1
2011-09-05
打赏
举报
回复
Abel Lee
2011-08-19
打赏
举报
回复
轻则程序崩溃,重则系统崩溃,永远记住不要对你不可用的内存赋值!!!
野男孩
2011-08-19
打赏
举报
回复
错误就是错误,没表现出来,那也是错误。别玩火~~
pathuang68
2011-08-19
打赏
举报
回复
buf除了第一个char是可以确定的外,其后的内容皆不能确定。
C和C++给了程序员很多自由,但自由也同时意味着责任。
jernymy
2011-08-19
打赏
举报
回复
等着崩溃吧
turing-complete
2011-08-19
打赏
举报
回复
显然越界了,你是想验证错误,但是没有得到错误吧。 呵呵,这种错误才是最厉害的错误。
品茶
2011-08-19
打赏
举报
回复
等着崩溃吧
至善者善之敌
2011-08-19
打赏
举报
回复
拉登来了。。。
小庙拜大神
一叶之舟
2011-08-19
打赏
举报
回复
当然了,A占8个字节,new char;只分配了一个字节,肯定会越界。
可以这样做:
char * buf= new char[sizeof(A)];
A * Aptr= (A *)buf;
Aptr->m_b=4;
Aptr->m_c=5;
xiaoguangzaia
2011-08-19
打赏
举报
回复
只申请了sizeof(char)大小的内存
实际操作了sizeof(A)大小
gykgod
2011-08-19
打赏
举报
回复
LZ 您是对的
可能会写非法内存
buf只有一个字节是合法的 往这个字节后面再写就写到别人那里了 覆盖了别的数据
珍惜生命远离CPP
2011-08-19
打赏
举报
回复
是,越界了
后果未知
再次启程
2011-08-19
打赏
举报
回复
越界了,这样可能无意中修改了某些未知的量,造成不可预测的后果
Saingel
2011-08-19
打赏
举报
回复
既然LZ这样写,那个性到底
char * buf= new char[sizeof(A)];
v_table
2011-08-19
打赏
举报
回复
c++让您这么用,斯特鲁普情何以堪。。
kkrmr
2011-08-19
打赏
举报
回复
有用。。
C++
内存
越界
问题
全解析
本文全面解析了
C++
中的内存
越界
问题
,涵盖其定义、常见场景、危害、检测手段及预防措施。内存
越界
属于未定义行为,可能导致数据损坏、程序崩溃和安全漏洞。文章介绍了数组、堆内存、容器、字符串和指针操作等常见
越界
情况,并提供编译器工具、调试工具和静态分析等多种检测方式。最后提出使用现代
C++
容器、严格边界检查、避免裸指针等预防策略。
C++
vector
越界
的
问题
本文探讨了
C++
中vector
越界
问题
,重点关注string::size(), length()以及find()函数在使用时的注意事项。由于size()返回无符号整数,未初始化可能导致意外大值,如18446744073709551615。为避免此类
问题
,文章提出了两种改进措施。 107755917,8435112,C语言高效实现01字符到比特流转换,['C语言', '数据转换', '编程技巧', '效率优化', '比特操作']
c++
数据
越界
问题
本文通过一个实际案例解析了
C++
中由于数据
越界
导致的内存分配失败
问题
,深入分析了整型溢出的原因,并提供了解决方案。
C++
数组
越界
问题
本文探讨了
C++
中数组
越界
的原因及解决方案,并详细解释了
C++
不进行数组
越界
检查的原因。此外,还提供了如何通过逻辑运算符正确地避免数组
越界
问题
的有效策略。
【
C++
数组
越界
问题
】
本文详细探讨了
C++
中的数组
越界
问题
,包括全局数组、局部数组以及STL容器如vector的边界处理。同时提及了字符数组和整型数组使用ASCII码的特殊情况。
C++ 语言
65,211
社区成员
250,516
社区内容
发帖
与我相关
我的任务
C++ 语言
C++ 语言相关问题讨论,技术干货分享,前沿动态等
复制链接
扫一扫
分享
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
请不要发布与C++技术无关的贴子
请不要发布与技术无关的招聘、广告的帖子
请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下
试试用AI创作助手写篇文章吧
+ 用AI写文章