老外对goto的幽默注释---goto的合理用法---

fohoo 2003-10-20 08:37:40
/* now we know the sizes, so allocate memory */
yuv_buffer = (unsigned char *) malloc(XDIM*YDIM);
if (!yuv_buffer)
goto free_all_memory; /* goto is one of the most underestimated instructions in C !!! */
divx_buffer = (unsigned char *) malloc(XDIM*YDIM*2); /* this should really be enough! */
if (!divx_buffer)
goto free_all_memory; /* actually, every program should contain a goto */

YDIM = YDIM*2/3; /* PGM is YUV 4:2:0 format, so height is *3/2 too much */

rgb_buffer = (unsigned char *) malloc(XDIM*YDIM*4);
if (!rgb_buffer)
goto free_all_memory; /* the more, the better! */
...全文
42 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
fohoo 2003-10-21
  • 打赏
  • 举报
回复
多分支返回用goto很方便
fbmsf 2003-10-21
  • 打赏
  • 举报
回复
goto翻译到汇编就是Jmp,没有jmp连api都调用不到,为什么不用。

说什么goto破坏什么什么if for 结构,简直是晕,汇编里的jmp多的是。
oo 2003-10-21
  • 打赏
  • 举报
回复
这种结构用goto是最好的了,要不做起来很麻烦的。
vcppman 2003-10-20
  • 打赏
  • 举报
回复
9494 看看m$的mfc中message routing那一块还用了goto 呢
flyelf 2003-10-20
  • 打赏
  • 举报
回复
只要用goto能带来方便,为什么不用呢
gezihou 2003-10-20
  • 打赏
  • 举报
回复
the more, the better
量子 2003-10-20
  • 打赏
  • 举报
回复
在那无所谓,作者只是想说有那么一个标号,代表一段代码。
awant2k 2003-10-20
  • 打赏
  • 举报
回复
free_all_memory 标记在哪??
dzqsuper 2003-10-20
  • 打赏
  • 举报
回复
怎么看不明白哦

16,470

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Web++
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧