注册 登录
编程论坛 C图形专区

用TC处理图象绝对是一个不明智的选择!!

flyue 发布于 2008-05-16 21:17, 15122 次点击
现在是什么年代了?2008年
微软的操作系统都发布了Vista版本,CPU也进入了64位的时代,
难道大家还仅局限于Turbo C的16位应用程序吗?过时啦~~~
像Turbo C的程序都是16位的,运行在DOS模式的控制台下,显示的图象颜色质量也很差。
要研究图象的处理,Visual C++绝对是首选,它不但可以使用GDI函数绘制真彩色的普通图象,在前些年发布的GDI+还可以绘制带有Alpha通道(半透明,比如png文件格式)的32位图象,微软的Direct3D就更好了,不管是2D还是3D都可以画出来,且速度快,直接用GPU进行绘图计算。
所以,朋友们,你们还要用几十年前的程序开发环境,把自己局限于一个狭小的空间来研究图象吗???
129 回复
#52
jig2008-05-29 15:43
还没消停呢?

唉,砌房子和造砖的都是对的,你们都大大的对。没必要再争论了。
其实你们两位都是在表达自己学习的经验和心得。都是对的,没什么谁对谁错。大家说的都是符合现实的。

这里只是社会分工让大家在不同的领域进行工作而已。


就我自己而言,我就喜欢造砖。TC下造的也就这样了,自己水平有限,无法再在这个平台做出有心意的东西。所以打算换高级点的编译器。GCC就是不错的选择。可我还是想用GCC来造砖。又来造个WIN下的图形库?能像ALLGERO那样NB,能在架构上有独特NB的地方就爽啦。


所以,这个只是分工或说是个人兴趣倾向的问题。大家都是NB哥哥。
#53
RockCarry2008-05-29 15:50
呵呵,我早就没跟他争了,随他去吧。有些话忠言逆耳,我还是不说了。
#54
jig2008-05-29 15:53
RockCarry 兄,在呢?
晕,我才发的评论你就回了?都成实时聊天了。

哎火消了吧?要不你们都用我的SPACE C吧,什么都可以用。顺便给我宣传。哈哈哈哈
#55
Knocker2008-05-29 16:13
呵呵,看来StarWing83不懂辩证法,制砖与砌砖是两个不同工种,是相互独立的关系;制砖工与砌砖工的是两种社会角色,身份是可以互换的。
#56
StarWing832008-05-29 16:13
RockCarry的观点我当然赞同,这事情本来就没什么好争的。况且这跟TC无关。
#57
Knocker2008-05-29 16:15
对于RockCarry同志经常修改自己的贴子的毛病偶老K是大大的BS
#58
Knocker2008-05-29 16:18
[bo][un]StarWing83[/un] 在 2008-5-29 16:13 的发言:[/bo]

RockCarry的观点我当然赞同,这事情本来就没什么好争的。况且这跟TC无关。
咦,听你的意思好象前几天吵架的是偶老K
#59
RockCarry2008-05-29 16:23
今天的工作搞完了。
上周跟公司去了海南4日游,周一晚上回来看了 starwing 的评论,就算随便说了下。
我目前已经习惯 make 工具了,space c 新版的我还没看,以前下过旧版的,我也想做一套 GUI 的库,可是现在还没有好的思路和架构。薰传的事我尽力吧。
#60
RockCarry2008-05-29 16:40
[bo][un]Knocker[/un] 在 2008-5-29 16:15 的发言:[/bo]

对于RockCarry同志经常修改自己的贴子的毛病偶老K是大大的BS

晕,这叫知错能改。
#61
StarWing832008-05-29 16:56
make是不错,呵呵
不过写大工程一般依赖VS的自动make,小东西直接命令行了。
话说,现在写大工程的机会还很少……
#62
flyue2008-05-29 19:15
花了5分钟再次完全看完了这个帖子,引起我一阵恶寒。

[[it] 本帖最后由 flyue 于 2008-5-29 19:16 编辑 [/it]]
#63
StarWing832008-05-29 22:27
Why?
#64
Knocker2008-05-29 22:30
因为你让他恶心了
#65
StarWing832008-05-30 13:01
LS的在说自己吧
#66
flyue2008-05-30 13:31
哎,没想到自己的一时意气引发了这么大的争论,搞得大家都不愉快。
祸从口出啊,罪过…………
不过我觉得RockCarry的喜欢修改帖子的习惯很不好,我觉得你说得很好嘛,干吗要用“...”来掩饰?早知道我就保存一份了,这么经典的帖子,可惜。
我想,这种行为是“不敢于面对事实”的表现吧?执着地追求一个目标,到头来人家告诉你这个目标早过时了,淘汰了,我知道这种滋味很不好受,就想当年我学VB一样,自认为VB是天下最好的编程工具,到头来告诉我“其实是最烂的”,我也很不好受,但是我愿意面对事实,现在不是正在学VC么?
#67
RockCarry2008-05-30 14:04
你也许是没有看到我后面的评论罢了,后面我有一页的 ... 的内容,如果你没看到就算了,我也不想再重发。我也没有什么不敢面对的事实,你可以向看到我评论的人求证就知道了。
#68
Knocker2008-05-30 14:06
偶再次BS RockCarry修改帖子的习惯
#69
RockCarry2008-05-30 14:15
有的话忠言逆耳,我当时希望尽量说的能让 starwing 接受一些,不过没有办法,人家不喜欢听。flyue 兄大可不必为我担心,我在现实生活中过得还不错,目前在深圳工作,月薪也算不错,在公司里还算可以了,而且今年也要结婚了。
#70
Knocker2008-05-30 14:16
就想当年我学VB一样,自认为VB是天下最好的编程工具,

//天下没有最好的编程工具,只有最适宜的工具。如果要写一个简易的基于IE内核的浏览器,而不考虑其它因素,是不是VB、BCB、Delphi。。。等等最上手?如果说要写一个病毒之类的,是不是汇编最佳?如此等等。关键是看你项目、工程的需求。
这种问题其实是没什么好争论的,问题在于,如果在论坛上长期灌输一种错误的认识,什么TC过时,VC也不合标准,会给初学者一个误导。
实际上有多少人是只用一种编译器?只会一种编译器?只会一种编程语言?
有什么编译器是万能的,适宜做任何项目工程?
#71
RockCarry2008-05-30 14:17
晕,再次声明,我修改帖子的习惯是为了追求完美,一般我都会改改帖子中的错别字。而这次将所有帖子改为 ... , 不过是为了避免更多的争端。
#72
liyanhong2008-05-30 16:02
能理解版主
#73
flyue2008-05-30 17:38
理解!
并祝福RockCarry大哥新婚美满,早生贵子,与贤妻生活安康,白头偕老,
少一点发生像这个帖子一样的争端…………
#74
hjj11232008-06-01 10:45
支持这样的争论。争论能使大家的交流思想,辨别一些东西。就算你没有学到什么(其实不可能),你至少也可以看看别人不同的思维角度,不同的思维方式。这对我们都是大有裨益的。
#75
2008-06-01 10:49
支持!!
#76
2008-06-01 10:55
不过,个人认为,学用TC可以学到底层的东西,就像DOS一样,使用仍然广泛,特别是在现在科技时代,就拿地震来说,邮政局可以使用发报机给外界发送信息,够原始的了,但是却没有用,悲观。看过《独立日》都知道,人类是靠发报机联络的。所以不能忘却基础的东西。往往基础是最难的,因为现在还没有哪个天才能解释为什么1+1=2,1+2=3到解释出来了,呵呵。
同时,程序员是要不停的学习新的语言的,新的东西才能促进进步!
#77
StarWing832008-06-01 11:18
RockCarry:
话说其实我在争论中,也学到了很多的。你毕竟的前辈,说的话是经验之谈。谁不想偷懒?肯定是追求完美或者是不得不写的时候才会去做“改进轮子”这种事情。事实上这种事情我也做过嘛,比如在学习算法的时候。所以我还是很敬佩你的~~

说到争论,其实是因TC而起。改进轮子不一定在TC上面改嘛……嘿嘿……话说,其实也无所谓,只要Rock前辈在TC上面写的程序我们看不出来是在TC上面写的就可以了……
#78
flyue2008-06-01 11:59
可以说,图象处理算法是算法编程里的“重中之重”!
#79
Knocker2008-06-01 12:17
说到争论,其实是因TC而起。改进轮子不一定在TC上面改嘛……嘿嘿……话说,其实也无所谓,只要Rock前辈在TC上面写的程序我们看不出来是在TC上面写的就可以了……


偶要在TC问题上彻底改变一下你的错误观念,你说说为什么不能用TC的理由,1234举出来
#80
卧龙孔明2008-06-01 20:28
[bo][un]flyue[/un] 在 2008-5-17 13:12 的发言:[/bo]

个人都有个人的看法嘛,5#的朋友也不要因为我发表了一下我自己的看法而心灰意冷啊
不过我觉得既然我们有这么好的条件,那为什么还要用几十年前的技术呢?有光明大道你不走,偏偏要走山间小道??
难道你学1 ...

显然你不知道哥德巴赫猜想到底是什么
#81
StarWing832008-06-01 22:12
1 TC不能完全利用机器资源,TC设计为16位机器编程,而不是现在的32位。
2 TC不是跨平台编译器(如GCC),却也不能完全利用特定平台(如Windows),在DOS下自然有生命力,但现在DOS使用的占有率大家都知道。
3 TC的C是完全的C,而现代大家多多少少会使用一些C++的特性,C++在对C进行大幅度修改的时候也免除了C的一些弊病,将C++当作扩展的C编程,可以减少代码的问题。
4 TC使用困难,虽然有WinTC可以简化使用,甚至使用控制台命令编译,但就使用来说仍然不如已经有成熟IDE的VC和DevC++。就技术来说,显然不会比现在的成熟IDE更加先进。
5 上个世界八十年代出品的TC,自然无法使用最新的编译以及优化技术,生成代码质量是个严重问题。可以说,即使是专门做DOS,还不如使用汇编来的划算。现代宏汇编就可理解性来说,已经很接近C语言了。
6 TC 缺乏详尽的官方文档(和MSDN比较而言),也缺乏大型的社区支持(和GCC比较而言)。

总之,Win32编程推荐成熟的Visual Studio套件,而跨平台编程可选GCC核心的IDE平台。至于可扩展的,用于描述算法的C代码,建议使用ANSI C89写就,这样可以在包括TC的大部分编译器上编译通过。(前提是提供Adapter式的typedef,比如TC上typedef short int _int16;)
#82
2008-06-02 02:39
R版主K版主卧版主的观点是确实不错的 .R版主把自己的帖子修改 看不到精彩的回复,可惜啊.

R版主说:
多参加集体活动,学习与人交往和相处,讨论时求同存异,谦虚的态度,健康的心理。

这个完全强烈支持.

3人行,必有我师.良好的心态最重要. 而纵观这个帖子,却感觉......以下省略若干字.

计算机技术应用领域有很多方向,分工也十分精细,主观武断的否定或肯定任何一样东西,都不合适.

R版主所说的,也就是现在工作中团队合作所需要具备的素质.

不过也挺羡慕现在的学弟学妹们,都是意气风发 锋芒毕露.
跟他们吵吵架,也能学到不少东西.
#83
njinji0072008-06-02 12:43
哈哈。无语了。各有各需要的地方。
#84
2008-06-02 15:40
如果是图形处理的话 最好自己用汇编写出mmx优化方法 备用
对图形图像处理来说 这很必须
#85
Knocker2008-06-02 20:15
    Turbo C 是Borland 公司的产品,实际上你所指的TC仅仅是 TC 2.0版,Turbo C还有更早的版本 TC 1.0、TC 1.5、TC 2.0,C++语言出现后,Borland 公司推出TC 3.0也就是Turbo C++.而后Windows 3.0 开始流行, Borland 公司又推出了Turbo C 的新一代产
品Borlandc C++。说了这么多,唯一想带出的一句话:Borland C++ 3.1是当初唯一可以写windows程序的C编译器,Microsoft C当时
也只能写写dos程序。以上这些都是题外话,与讨论的主题无关。
    下面进入正题,

1 TC不能完全利用机器资源,TC设计为16位机器编程,而不是现在的32位。
//我同意,但是你的VC,GCC写的程序能放到dos下去运行么?你可能还是要说现在有谁还在用dos?当然你在你学校、寝室里是不太见得到,有可能见到运用dos系统的地方就是有些超市的收银机收银系统,还有你回过头去看看45#贴子。还有C51等等之类的是什么你知道么?

2 TC不是跨平台编译器(如GCC),却也不能完全利用特定平台(如Windows),在DOS下自然有生命力,但现在DOS使用的占有率大家
都知道。
//GCC跨平台么?C/C++语言都是编译类语言,编译生成的是直接的本地二进制文件,怎么可能跨平台?关于跨平台这问题,我到是建议你还要再去了解了解。不要以为你把在LINUX下写的某一段源程序放到windows同样也编译成功就叫跨平台,如果这样就叫跨平台,BASIC早就跨平台了.
至于dos占有率问题,前面我已经说了一点,很多地方还是在用而且是不得不用。另一个,LINUX,UINUX占有率又如何呢?是不是也抛弃?


3 TC的C是完全的C,而现代大家多多少少会使用一些C++的特性,C++在对C进行大幅度修改的时候也免除了C的一些弊病,将C++当作
扩展的C编程,可以减少代码的问题。
//请注意,C与C++是两种不同的语言,如果你把C++写成C,我的看法就是脱裤子放屁。既没有得到C的优势(用C++方式编译总体性能上会丢掉5%左右),也扔掉了C++的优势(面向对象)。你为什么不直接用C++?

4 TC使用困难,虽然有WinTC可以简化使用,甚至使用控制台命令编译,但就使用来说仍然不如已经有成熟IDE的VC和DevC++。就技术
来说,显然不会比现在的成熟IDE更加先进。

5 上个世界八十年代出品的TC,自然无法使用最新的编译以及优化技术,生成代码质量是个严重问题。可以说,即使是专门做DOS,
还不如使用汇编来的划算。现代宏汇编就可理解性来说,已经很接近C语言了。

6 TC 缺乏详尽的官方文档(和MSDN比较而言),也缺乏大型的社区支持(和GCC比较而言)。
//以上叁条一并回答,我没有让所有人去学习或只学TC,也从没有让任何一个人不要学习任何一款32位编译器.反而是你和某些人对TC似乎是有天生的敌对情绪。我基于的观点是:
1。初学者可以用或者说我推荐用WinTC、TC学习C语言的基本语法,同时学习一下控制台命令编译、熟悉一下dos 操作。
2。什么成熟的、最新的编译及优化技术对是一个刚始写printf("Hello, world\n");的初学者有用么?况且,他在TC上学会printf("Hello, world\n");,以后再放到“有成熟IDE的、最新的编译及优化技术VC和DevC++”去编译效果会差掉么?我就想不通了。

总之,Win32编程推荐成熟的Visual Studio套件,而跨平台编程可选GCC核心的IDE平台。至于可扩展的,用于描述算法的C代码,建
议使用ANSI C89写就,这样可以在包括TC的大部分编译器上编译通过。(前提是提供Adapter式的typedef,比如TC上typedef short
int _int16;)
//我没让你用TC去写win32程序,我还没这么BC。{...}//又看错了,更改

[[it] 本帖最后由 Knocker 于 2008-6-2 20:32 编辑 [/it]]
#86
Knocker2008-06-02 20:30
又看了一次,对第二点,我可能是理解错你的意思,你应该说的不是指gcc编译的程式可跨平台
#87
StarWing832008-06-02 22:46
对,我说的是GCC编译器可以交叉编译,并且可以编译支持跨平台的C代码。

大体上同意你的看法。如果仅限于DOS,当然TC是竞争决定的最好选择。可惜我做Win32编程。我没有抵触TC,只是我自己不用而已。就是这样。
至于初学者。也要分目标吧?我想目标是MFC或者是Win32开发的初学者再开始的时候选择TC,的确不是一个好的选择。

你一方面说TC支持DOS,但是首先支持DOS的不是只有TC,你也说了Microsoft C也支持DOS,显然这方面的竞争强烈,而具体谁胜出,你使用什么和我一点关系都没有:这不属于初学者的范畴,也不是“大众化”的讨论。另一方面,就大多数人用的Win32来说,TC还合适吗?感觉你的观点和Opera告微软绑定IE有点相同,嘿嘿~~~~我只想说,老K只要有本事说你用的DOS系统进论坛看网页写程序。我保证绝不干涉你使用TC——当然其实我也干涉不了。

其次,对于初学者。我承认TC是支持ANSI C标准的。但是我说了,这个16位的编译器很有可能给初学者造成坏的习惯(比如认为int就是16位,这种人在论坛可不少)。其余的还差强人意。不算很坏。

总体来说,存在即合理。既然TC有特定的用户群我们讨论了也没用。反正就是这样子了。我还是用我的GCC,感觉很舒服。
#88
Knocker2008-06-03 07:49
至于初学者。也要分目标吧?我想目标是MFC或者是Win32开发的初学者再开始的时候选择TC,的确不是一个好的选择。
//你为什么要把win GUI编仅仅局限于MFC或者说win SDK ?难道你不知道还有VCL?用TC的人完全可以下一步就用BCB
当然,还有更多的选择
#89
Knocker2008-06-03 07:54
正如前面82楼所说的,

计算机技术应用领域有很多方向,分工也十分精细,主观武断的否定或肯定任何一样东西,都不合适.

你所看到只不过是个井口,听听海龟意见不是一件坏事。
#90
RockCarry2008-06-03 09:31
买个取款机,好 NB 的名字,太强大。

[[it] 本帖最后由 RockCarry 于 2008-6-4 11:36 编辑 [/it]]
#91
RockCarry2008-06-03 10:17
给大家推荐一下无名鸟的一个 demo 吧,同样是 dos 下的作品,不过用的是 watcom c. 作品给人操作上的感受还是蛮爽的。其实大家不必再为这个话题发表评论了,大家都学我把所有帖子都改为 ..., 不就完事了。真有时间可以多写些作品给大家欣赏。这个 demo 可谓是相当的强悍,了解 dos 游戏开发的,都知道 dos 下是什么都没有的,全部的底层都要自己做。无名鸟组合早期就有做过 dos 下 watcom c 的底层库,包括图形,音频,控制的实现。总之是太佩服了,自己还差了好远,要加油了。看了人家的作品,才知道自己到现在还是一事无成啊。
http://www.
#92
RockCarry2008-06-04 12:17
其实大家适当的争论下也不错,否则论坛里面每天都没人说话,死气沉沉的,呵呵。可以活跃下气氛。
#93
CPlusPlus2008-06-05 20:06
真正要用Dos下面開發32位圖形程式的話,就用Djgpp吧,速度快,出來的圖形質量也不差地。
#94
stephen2502008-06-09 12:17
我反对
#95
奔跑的鸟2008-06-09 19:26
[bo][un]RockCarry[/un] 在 2008-6-3 10:17 的发言:[/bo]

给大家推荐一下无名鸟的一个 demo 吧,同样是 dos 下的作品,不过用的是 watcom c. 作品给人操作上的感受还是蛮爽的。其实大家不必再为这个话题发表评论了,大家都学我把所有帖子都改为 ..., 不就完事了。真有时间可 ...

这个做的nb用dos,强人啊!
#96
StarWing832008-06-10 23:44
是,我是井底之蛙,不过老K听说过“博而不精”这个词么?
那个真的没什么好吵的。
顺便说一下,很佩服做DOS的人。有人说C中有高手,C++中没有高手。我想说DOS中有高手,Win32中没有高手……
个人意见,反对请勿拍砖……
#97
kk48682008-06-11 07:56
为了饭碗请学win32
热爱编程请...
#98
VxWorks2008-06-11 21:52
可惜,我今天才发现有这么个地方,有这么热闹的帖子

>>顺便说一下,很佩服做DOS的人。有人说C中有高手,C++中没有高手。我想说DOS中有高手,Win32中没有高手……

你向他们屈服了?
高手就不能用C++,只能用C ?
DOS是80年代才出来的,之前是不是就没有高手了?DOS死后是不是高手也要陪它去死?

你要是没有唯我独尊的英雄气也可以有像我这样老子天下第一的匪气,大声说:
RockCarry,Knoker,tnn的我就是不服你们
#99
StarWing832008-06-12 00:00
屈服?不
这个观点是我一直以来都有的
C是一个人发明的语言,比之强大的功能,更吸引人的是其艺术的特质。C的强大灵活可以更为充分地发挥个人的才智,从而体现编程个性。
很可惜,这个年代,个性和才智已经不重要了,人家考虑的不是你代码写的多优雅,实现的多么天衣无缝。人家要的是团队组合能力,是良好的可维护性,使可复用的优质代码。所以,C++诞生了。
这就是我说的,C中有高手,C++中没有高手的原因所在。

而DOS中有高手,Win32中没有高手,则基于相同的原因。

DOS太过于简单,相对于Win32,给了程序员充分发挥自我才能的空间,因此可以显现出程序员的智慧,而Win32,对不起,单单一个窗体请写上百行吧,在繁重的代码负担下,程序员根本没办法考虑个性。

曾经准备用纯SDK写俄罗斯方块,但是发现太过于复杂了,实现料想中的Core+Shell基本上相当于用C来实现一个WTL(C++上的一个库,对SDK做了很薄的包装,以其短小精悍,灵活强大著称),所以无奈放弃了。

只能说,在吃饱了饭的情况下,才允许你搞艺术,如果写代码就足够你焦头烂额了——你还是专心地码代码混饭吃吧……
#100
VxWorks2008-06-12 00:07
是不是原始社会有英雄,现代社会只有狗熊?

我认识50多岁的人,他们曾经用纸带穿孔写程序,是不是也是高手,是不是很能发挥自我才能空间,显现出程序员的智慧?
#101
StarWing832008-06-12 03:06
很简单的道理,原始社会拳头硬就是英雄,你现在到大街上给我杀个人试试看?
英雄的定义随时代不同而不同,DOS时代,代码写得优雅漂亮,精悍强壮是英雄,Win32时代,代码写得清晰明了,可维护可复用就是英雄。不是说不追求完美就不是英雄了。
问题在于,管他英雄不英雄,艺术就是那么回事儿,艺术发达到一定程度,就成了技术,英雄强到某种程度,就成了任人宰割的狗熊。

搞技术的,哪个搞得赢搞商业的?
123