- 3
- 0
- 约5.31万字
- 约 11页
- 2017-01-20 发布于河南
- 举报
常见编程错误.
常见编程错误
我们总结出一些简单而常见的编程错误, 特列举出其中可能造成潜在危害的例子以供参考,希望对各位有所帮助。
一、指针及内存申请、释放
指针被定义时,就像是拥有了一块指路牌,不同类型的指针将被用来指向不同类型的实物,恰如景点类指示牌指向某个景点,售票处类指示牌指向售票处,这些不同类型的指示牌(不同类型的指针)刚建立时都是白板,也就是其指向是未定义的,这时千万不能直接使用。
例:
u8 dfd2_10Cmd_CheckEraseBlockSuccess(u16 * pp_AdrrBeginErase)
{
……
volatile u16* pl_Adress_Of_Erase;
do
{
vl_Data1 = *pl_Adress_Of_Erase;//Dangerous!!!
……
其中的指针pl_Adress_Of_Erase尚未指向任何东西就开始被使用了,危险。
要使用这些指示牌的第一个工作就是在上面画上与该类型指示牌对应类型的实物的图像或文字,比如“飞来峰”,同时把指示牌的箭头指向飞来峰的方向(这就是给指针赋值,让其指向实物)。改变指针的值就比如将指示牌的内容重新刷成“西湖”,同时把指示牌的箭头扳过去。除非强制指定类型,否则这块用于指示景点的指示牌是不能用于指向非景点的。有时,指针的指向实物要在用时才建立起来的,比如建立一个指针,让它指向临时缓存
原创力文档

文档评论(0)