| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 8580 人关注过本帖, 2 人收藏
标题:strcpy函数怎么写
只看楼主 加入收藏
StarWing83
Rank: 8Rank: 8
来 自:仙女座大星云
等 级:贵宾
威 望:19
帖 子:3951
专家分:748
注 册:2007-11-16
收藏
得分:0 
Vx能不能推荐几本汇编编程的技巧方面的书籍?以前似乎都有人写这方面的文章的。最近都是高级语言,这些东西都很少了………………

专心编程………
飞燕算法初级群:3996098
我的Blog
2008-05-15 00:23
sunkaidong
Rank: 4
来 自:南京师范大学
等 级:贵宾
威 望:12
帖 子:4496
专家分:141
注 册:2006-12-28
收藏
得分:0 
看了下,这帖子长的好快啊.提高单位可复制长度,减少指针移动..呵呵,Vx有什么好的汇编书吗?介绍下啊.

学习需要安静。。海盗要重新来过。。
2008-05-15 09:37
VxWorks
Rank: 3Rank: 3
来 自:WindRiver
等 级:论坛游民
威 望:6
帖 子:859
专家分:68
注 册:2007-11-24
收藏
得分:0 
引用某人曾经的言论:
-,-争论的意义?-,-
其实,能够跟偶吵得起来的,都是特别爱面子的人。
我自己嘛,说话比较直接,经常不经意就说出自己最真实的感受
特别地,对别人写的代码,一般我喜欢讲缺点。
过于直接,给别人感觉就像是看不起人。
特别地,当我所说的话,是对着一个爱面子的人的时候,
不可思议的事就在此时发生了,并且当累积到一定程度,
只要在这个时候再加一导火索,马上量变到质变,
并且有趣的是,这几次,导火索都是同一人制造的。

当我在20楼指出你的问题时你又是什么态度呢?
为什么总是只能看到别人的缺点?
=====================================================================
库函数由于不能移植,而且重点是健壮和高效,所以常常使用汇编语言对特定的平台进行优化。IA-32架构的pc机对内存使用cache进行4字节映射,所以4字节内存对齐,每次对内存取32bit数据是最为高效的。70楼的程序和Intel为奔腾之前的低端IA-32平台提供的库函数差不多。对库函数的调用不能进行假设,用户传递进来的地址未必就是内存对齐的,如果进行没有对齐的4字节访问,反而会降低效率,这样的库函数效率的发挥也是不稳定的,时高时低。

设计c语言时是对应早期的Von Nouma计算机物理模型,所以c是一种具有底层特性的高效语言,如指针,auto,register等概念对硬件的贴近程度当时除汇编外没有其他语言能够达到。Pentium之后出现的新技术使得c离新的底层越来越远,新的技术只能依靠智能的C编译器选择合适的新指令加以利用,这时就只有汇编语言允许程序员直接使用新特性了。实际工程项目中如果使用最好的算法仍不能达到满意的效率,这时就要进行profile,找出瓶颈,使用汇编进行优化。
25楼的言论太过狂妄。

为了防止世界被破坏,为了守护世界的和平,贯彻爱与真实的邪恶,可爱又迷人的反派角色,VxWorks!
Don't ask me any question.I'm just here to buy soy sauce.
2008-05-15 11:13
StarWing83
Rank: 8Rank: 8
来 自:仙女座大星云
等 级:贵宾
威 望:19
帖 子:3951
专家分:748
注 册:2007-11-16
收藏
得分:0 
保持观望态度……汇编我是小菜,虽然4字节对齐我是知道的……

专心编程………
飞燕算法初级群:3996098
我的Blog
2008-05-15 11:22
sunkaidong
Rank: 4
来 自:南京师范大学
等 级:贵宾
威 望:12
帖 子:4496
专家分:141
注 册:2006-12-28
收藏
得分:0 
呵呵.翅膀我陪你一起看..Vx兄弟我们要得书呢?

学习需要安静。。海盗要重新来过。。
2008-05-15 11:44
雨中飛燕
Rank: 1
等 级:新手上路
帖 子:765
专家分:0
注 册:2007-10-13
收藏
得分:0 
>>需要加断言吗?
>>1.断言只是在debug版本中有用。
>>2.调用库函数时实参的有效性由调用者负责。

这是你在20楼说的。
那我问你一个问题,你写代码从来不写断言?
你就能保证你对库函数的调用永远正确有效?

[color=white]
2008-05-15 12:11
StarWing83
Rank: 8Rank: 8
来 自:仙女座大星云
等 级:贵宾
威 望:19
帖 子:3951
专家分:748
注 册:2007-11-16
收藏
得分:0 
我想说一句。首先库函数是没有断言的,因为提供的是二进制库。而且,我使用API的时候,WIN32 API也是没有断言的。它使用的办法是如果参数错误,就SetLastError,然后马上返回。当时我是十分震撼的。因为我很信任断言,几乎什么函数都用。了解这个以后,我才知道断言也有局限性。断言对二进制库无效。如果不公布原代码,断言对第三方库也是无效的。应该在断言之外提供通用的报错手段。
因此,《编程精粹》提供的方法是:库函数不检查参数,而是自己给库函数写“外壳”函数,在Debug版本中检查参数。在Release版本则直接调用。我现在也一直用这个办法。

专心编程………
飞燕算法初级群:3996098
我的Blog
2008-05-15 12:20
VxWorks
Rank: 3Rank: 3
来 自:WindRiver
等 级:论坛游民
威 望:6
帖 子:859
专家分:68
注 册:2007-11-24
收藏
得分:0 
[bo]以下是引用 [un]雨中飛燕[/un] 在 2008-5-15 12:11 的发言:[/bo]

>>需要加断言吗?
>>1.断言只是在debug版本中有用。
>>2.调用库函数时实参的有效性由调用者负责。

这是你在20楼说的。
那我问你一个问题,你写代码从来不写断言?
你就能保证你对库函数的调用永远正确有效?


你确定你已经理解了我的这两句话吗?
86楼理解的比你要深。

为了防止世界被破坏,为了守护世界的和平,贯彻爱与真实的邪恶,可爱又迷人的反派角色,VxWorks!
Don't ask me any question.I'm just here to buy soy sauce.
2008-05-15 12:28
雨中飛燕
Rank: 1
等 级:新手上路
帖 子:765
专家分:0
注 册:2007-10-13
收藏
得分:0 
[bo]以下是引用 [un]StarWing83[/un] 在 2008-5-15 12:20 的发言:[/bo]
我想说一句。首先库函数是没有断言的,因为提供的是二进制库。

说的可真是绝对
任何方法都有优点和缺点,但你不能否认断言是一个强有力的调试工具

[color=white]
2008-05-15 12:30
雨中飛燕
Rank: 1
等 级:新手上路
帖 子:765
专家分:0
注 册:2007-10-13
收藏
得分:0 
好的好的,我知道我很菜,我回去再练两年再出来说话好了

[color=white]
2008-05-15 12:34
快速回复:strcpy函数怎么写
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.022939 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved