问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

从程序执行效率方面考虑,请简述C语言采取的一些措施和原因(这是去年的复试题,请给出比较官方的语言)

发布网友 发布时间:2022-06-14 10:59

我来回答

2个回答

热心网友 时间:2023-10-18 12:08

说实话,这个问题问的比较大,C语言被誉为最灵活的语言,九曲十八弯,千变万化,如何是程序高效率运行取决于程序员对计算机底层的理解和对C语言的熟练掌握。但单从答题的方面考虑,我在这里提出几点仅供参考:
1.使用指针:对于指针的理解简单点可以认为类似于汇编中的寻址方式,正是指针的存在使C语言威力无穷。有些程序用其他语言也可以实现,但C能够更有效地实现;有些程序无法用其它语言实现,如直接访问硬件,但C却可以。正因为指针可以拥有类似于汇编的寻址方式,所以可以使程序更高效。
2.使用宏函数:函数和宏函数的区别就在于,宏函数占用了大量的空间,而函数占用了时间。函数调用是要使用系统的栈来保存数据的,如果编译器里有栈检查选项,一般在函数的头会嵌入一些汇编语句对当前栈进行检查;同时,CPU也要在函数调用时保存和恢复当前的现场,进行压栈和弹栈操作,所以,函数调用需要一些CPU时间。而宏函数不存在这个问题。宏函数仅仅作为预先写好的代码嵌入到当前程序,不会产生函数调用,所以仅仅是占用了空间,而使程序可以高效运行。在频繁调用同一个宏函数的时候,该现象尤其突出。
3.使用位操作:位操作可以减少除法和取模的运算。在计算机程序中数据的位是可以操作的最小数据单位,理论上可以用"位运算"来完成所有的运算和操作。一般的位操作是用来控制硬件的,或者做数据变换使用,但是,灵活的位操作可以有效地提高程序运行的效率。
4.循环嵌套中将较长循环设为内存循环,较短循环设为外置循环,以减少cpu跨切循环层的次数,提高程序的运行效率。

热心网友 时间:2023-10-18 12:09

这绝对是编译原理和编程语言的综合运用,这题是哪个学校的?
我觉得百度知道上多数C语言和计算机专业的人可答不上来啊,自然也包括了我。
如果你是跨专业的……你考到了一个超强的学校啊……追问电子科大

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
逆水寒手游庄园怎么邀请好友同住 逆水寒手游 逆水寒不同区可以一起组队吗? 逆水寒手游 逆水寒怎么进入好友世界? 逆水寒手游 逆水寒怎么去别人的庄园? 使用puppeteer实现将htmll转成pdf 内卷时代下的前端技术-使用JavaScript在浏览器中生成PDF文档 【译】将HTML转为PDF的几种实现方案 变形金刚08动画怎么样 变形金刚08动画的问题 变形金刚08动画日语版剧情介绍 从程序空间读数据,用那段程序 星巴克用支付宝付怎么不显示名字 支付宝里为啥不显示名字,只显示你的亲友 西瓜汁能洗掉吗 手上染了西瓜汁忘记洗了,第二天发现手上变黄了,怎么办? 关于在天通苑买房 北京服装学院北校区校区情况和食宿情况 天通苑附近有动漫店吗 适合老人散步穿的鞋有哪些? 孙悟空到天庭搬救兵的神仙名称及法宝 封神英雄榜里面魔礼寿的法宝是什么 有5个队参加单循环足球赛,已经赛了6场,求证:必有一只队至少赛了3场 足球赛是个什么比赛顺序?单/双循环赛?都是什么东东阿 梦到上海的一座寺庙拜完发现里面的佛像对着我笑,醒来后发现那做寺庙 请问高德导航在高速公路指的方向为什么和路牌指的方向一致呢? 百度地图和高德地图定位地址哪个好用 什么是散文 散文有什么特点 新人我想知道超次元游戏海王星到底有哪些游 有英语聊天机器人 有没有可以英语聊天的机器人? 支付宝里怎样制作宽度80-960像素高度100-12800像素的一寸电子照片? 上传支付宝证件照,要求500K,但是手机拍出来的大于500k,该怎么弄 星际战甲冥王星怎么打 星际战甲冥王星通关攻略 我把微信好友删除了。他老和我说话。为什么添加又加不上显示失败尼。 《小岛经济学》pdf下载在线阅读全文,求百度网盘云资源 小岛经济学编辑密码 《小鸟经济学》第119页末尾“无法自由地失败,也就是无法自由的成功。”是什么意思? 小岛经济学第十四章分析 小岛经济学第十三章有哪些经济现象 它的影响 公积金贷款额度何时上调' 公积金贷款额度调整以什么时间为准 你都36了还不愁嫁,随便找个人算了,难道大龄剩女就该这样吗? 为什么只有大龄剩女,没有大龄剩男这种说法? 楼上人家卫生间把浴缸敲掉换成淋浴,要和楼下人家通知吗。物业要通知吗 我家卫生间的亚克力浴缸不想用了,但又抬不出来,如何搞碎 卫生间改造,拆浴缸装淋浴房,时间,费用大概多少 用户运营和客服有哪些不同 客服和游戏运营(用户方向)工作性质和内容是一样的么 写出十句爱国的古诗 太阳能安装显示屏好还是