| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 5874 人关注过本帖, 4 人收藏
标题:有个疑惑待解
只看楼主 加入收藏
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
收藏
得分:0 
不负责的编译器,倒贴钱也不值得使用。

授人以渔,不授人以鱼。
2012-11-02 19:29
Amycoa
Rank: 2
等 级:论坛游民
帖 子:18
专家分:56
注 册:2012-10-27
收藏
得分:1 
以下是引用TonyDeng在2012-11-2 19:06:13的发言:

你执行得到后面那个画面,就已经获得.exe,还.o呢,连C的运行机制也不明白是吧。
Linux 有.exe这一说? 求解惑 ~~~

C/ASM ReGo ! .. ...Amy.Coa
2012-11-02 19:37
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
收藏
得分:0 
Unix下默认的可执行文件后缀是.out,不是.o。
.o是编译出来的目标文件object file,还没有链接的,不可执行。

授人以渔,不授人以鱼。
2012-11-02 19:46
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
收藏
得分:0 
执行,动词execute,可执行的文件,executable file。.bat、.com、.exe、.sys等等,都是可执行文件。程序可执行与否,与扩展名无关,实质在指令性质。
out,仅仅是输出。
名字都起不好,谈何优越。

楼主的程序能够执行,就表示它已经通过了编译和链接,产生了可执行文件,而且确实能执行。这种可执行的文件,不管它的扩展名是什么,本质上都是executable file,即所谓的.exe文件,称呼不同而已,说的是本质。

那个运行出来的现象,其实很容易解释,这与gets()有缓冲区溢出攻击一样,可以执行不奇怪,因为这是程序自身设计的bug。但编译器让这种不符合语义的代码编译通过,并不给出任何错误或警告提示,那就是这个编译器失职。免费的,可以不进行任何检查一股脑儿让代码编译通过,那有什么困难,只是编译器的价值不是在于能够产生最终可执行文件,而是能够给程序员提供尽可能多的错误和缺陷预防措施。

授人以渔,不授人以鱼。
2012-11-02 20:06
J1036014410
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2012-11-2
收藏
得分:0 
回复 11楼 TonyDeng
在没验证之前就不要瞎说,你用windows下的编译器试试,如果编译不通过,我没啥说的,如果通过了呢?你怎么说?
2012-11-02 20:10
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
收藏
得分:0 
以下是引用J1036014410在2012-11-2 20:10:44的发言:

在没验证之前就不要瞎说,你用windows下的编译器试试,如果编译不通过,我没啥说的,如果通过了呢?你怎么说?

这种代码反复试过不通过,任何一款负责的编译器都不会让它通过。

授人以渔,不授人以鱼。
2012-11-02 20:12
兔bug
Rank: 2
等 级:论坛游民
帖 子:10
专家分:12
注 册:2012-9-22
收藏
得分:1 
gcc编译器很好很强大 尤其在Linux下 楼主放心使用
2012-11-02 20:13
J1036014410
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2012-11-2
收藏
得分:0 
回复 6楼 TonyDeng
你真捣蛋。
2012-11-02 20:16
J1036014410
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2012-11-2
收藏
得分:0 
回复 16楼 TonyDeng
凭证呢?
2012-11-02 20:17
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
收藏
得分:0 
说你不信,自己看看吧:
图片附件: 游客没有浏览图片的权限,请 登录注册

授人以渔,不授人以鱼。
2012-11-02 20:18
快速回复:有个疑惑待解
数据加载中...
 
   



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

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