㈠ c语言编译运行乱码是什么原因
这种情况多数是由于操作系统的语言选项不正确引起的。建议你查看一下控制面板中的区域和语言选项,特别是有关“非Unicode程序的语言”,一定要选择成“中文(简体,中国)”。然后重启电脑。
㈡ 如果编程语言学多了会不会乱
语言的东西大致都是相差无几,最重要的是学习一些编程思路,一些实现方法。把一个程序思路给弄懂了,代码实现起来就很简单。每种语言无非就是200多个关键字,而且用法90%以上都是一样,弄懂了也就没什么了,再加上有SDK辅助。多看,多练习。就算在语言方面弄混也没什么关系,一下很快就会有你想要的答案。
㈢ 编程语言语法都不同,学了几种生,你们会不会觉得混乱
不混乱,相反,编程语言语法都差不多。当你完全熟了以后就没有什么感觉了,就像你说家乡方言,说普通话,各说各的都很自然。
㈣ 为什么软件会乱码
软件乱码一般是字体设置错误或者丢失或者区域语言设置有问题导致的,可以通过下面方式修复:
1.首先从字体显示正常的电脑拷贝一份字体库,具体目录在c:/windows/font,然后覆盖原系统的字体库,如下图所示
2.还原系统默认字体。具体设置,开始,控制面板,所有控制面板项,字体,然后点击还原默认字体设置即可。
3.系统区域语言设置有问题导致软件乱码,现在很多软件乱码都是因该问题导致的。
现在很多软件出现乱码主要原因就是系统的区域和语言设置出现问题,需要恢复默认的中文(简体,中国)。点击开始,控制面板,打开控制面板对话框,然后点击时钟谨拿、语言和区域,然后再点区域和语言,打开区域此亮和语言对话框,切换到管理选项卡,然后非Unicode程序的语言中点更改系统区域设置,切换到中文(简体,中国),然后重启电脑即可修复乱码问题。
Unicode(统一码、万国码、单一码)是一种在计算机上使用的字符编码。它为每种语言中的每个字符设定了统一并且唯一的二进制编码,以满足跨语言、跨平台进行文本转换、处理的要求。多数字符都是这种编码。但由于不同国家和地区采用的字符集不森晌宽一致,很可能出现无法正常显示所有字符的情况,非 Unicode选项作用就是在遇到这种情况时,把非 Unicode编码字符按照你选择的语言进行显示。
㈤ 为什么有的程序员的代码结构混乱
程序员都有一颗工程师的心,所以当他们到一片新的场地想做的第一件事就是,将旧的一切推倒重来。是的,他们决不会满足于简单的增量劳动。
或许这种微妙的心理定位可以解释:为什么程序员进入新项目组后宁愿丢掉旧代码重新写,也不愿意修修补补。他们认为旧代码简直一团糟。
但是,事实上真是这样吗?你之所以认为旧代码一团糟,其实是由编程的一个基本定律决定的,那就是:写代码容易,读代码难。
为什么你觉得旧代码异常混乱?因为读代码更难。
这大概就是代码Reuse难以实现的原因。 这就是你组里的每个人都喜欢用不同的功能将分割的字符串转换成一个数组。比起猜测旧的功能是怎样实现的,重新写一个自己的功能要简单和有趣多了。
作为这个公理的推论,你可以问问身边的程序员他们正在奋战的代码怎么样?「简直是一塌糊涂!」他们肯定会这样说。「我简直想推倒重来!」
为什么认为代码这么糟糕呢?「额,看看这个功能,竟然有两页长!完全不知道这些东西为什么在这里!完全不知道这些API是干什么的。」他们会这样回答你。
漫画:读别人代码是一种怎样的体验?
曾经,Borland的创始人 Philippe Kahn当初就是向记者们吹嘘:Quattro Pro会比Microsoft Excel要好用得多,因为它是从头开始编写的,全部都是新的源代码!
但是,认为新代码比旧代码好简直就是荒谬。旧代码是已经运行过的,测试过的。无数的bug在被发现前都上线运行过,发现之后程序员们可能在花了好些日子才修复了这些bug。这种修复可能是一行代码,也可能是几个字符,无数的时间和精力都花在了这些bug修复上。
当你决定抛弃这些旧代码从零开始的时候,你也丢掉全部前任努力的结果。
新代码一定比旧代买好?NO,重写可能会带来更大的风险。
对技术领导者来说,重写项目的代码也是一个异常艰难的决定。因为从公司层面说,重现代码甚至会威胁产品的市场竞争力。一旦决定重写代码,那么与竞品相比,你可能落后了2~3年——在软件行业,这时间可够长的。
你理想中的新代码会带来产品功能的提升▼
但事实上,即便重写的新代码可以实现旧代码的所有功能和需求,但是为产品带来的市场竞争力只有边际提升。因为重写用的新技术、新语言、新框架并没有给产品带来质的飞跃。
更不用说在重写的漫长过程中可能会遇到一些意外情况,比如:
1、缺钱:资金链的断裂▼
2、缺人:核心程序员离职
最终导致效果不佳:达不到原产品应有的所有功能和需求,白白浪费了时间和金钱,也丢掉了市场竞争力。▼
所以重写代码意味着,你在把自己置身于非常危险的境地,可能几年后你也写不出比以前更好的代码。你只是花了一大笔钱把已经存在的代码又写了一遍。
当你觉得眼前的旧代码很烂时,该怎么办?
你觉得旧代码写的很烂,那又怎样呢?它们已经上线,已经在实际运行中经受住了考验。所以当你发现前任留下的代码乱七八糟的时候,不妨冷静下来,从以下三个方面入手理解代码、改善代码:
1、代码的结构有问题
如果一段网络代码突然弹出了自己的对话框,应该是UI代码需要被处理。这些问题可以被解决掉,你要一次次小心地移动代码,重构,改变接口。还需要一位细心的工程师立马仔细地检查这些改变是否有问题,从而不打扰到其他人。事实上,甚至比较大的结构变化也可以不扔掉代码来完成。
大牛程序员Joel Spolsky回忆说,曾经在某个项目中,他和他的团队花了好几个月重新架构在一点上:把代码动来动去、清理、创建有意义的基类,并创建了模块之间的完美接口。但是他们始终非常小心翼翼,并没有产生新的bug、也没有丢掉任何旧代码。
2、代码的效率不高
曾经,Netscape的渲染代码被传非常缓慢。但事实上,这只会影响该项目的一小部分,这部分是你可以优化甚至重写的。你完全不必重写全部代码。优化速度的1%工作量,会让你获得99%的爆炸性提高。
3、代码写得很丑
有些代码真的写的很丑,比如Joel曾参与一个项目,开始用下划线做开始的成员变量约定,但后来改用更标准的「M_」。所以一半的功能用「_」开始,一半用「M」开始,这看起来真的很丑陋。但这个问题5分钟就能解决,而不用从头开始写全部的代码。
最后,你要记住,从头开始再写一遍并不意味着你会写出比以前更好的代码。因为你没有参与到上一个版本的创建,所以你其实根本就不算有经验。一旦你准备推倒重写,你可能会再犯一遍版本一犯过的错,甚至会产生更多的新问题。
一个总结:
面对糟糕的旧代码,Keep Calm & Carry On !
在大型商业项目中,推倒重来是非常危险的行为。当然,如果你是在做实验,想到新算法可以随时重写。
㈥ VB、Delphi等编程语言没落的主要原因有哪些
VB、Delphi等编程语言流行的时代是1995年前后,PC开始进入家庭和公司,这个时候的主流应用叫Windows窗体应用。现在,我们的电脑上还有大量这样的应用,如Office,WPS,ERP系统等。值得一提的是,同期还有一个开发这类软件的神器:Powerbulid。Powerbulid让工厂里面的程序员与软件公司的程序员处于同能纳李开发能力上,那是定制开发的黄金时代。
VB1,0诞生于1991年,鼎盛的VB6.0诞生于1998年。Delphi1.0诞生于1995年,鼎盛的Delphi7.0诞生于2002年。Delphi其实没有没落,依旧继续发展。Delphi的继续发展历程,可以解释为什么这些古典语言会没落。
2000年以后,世界走入了互联网时代。浏览器代替了传统了windows窗体应用。操作系统也不是微软一家独大,linux系统迅速崛起。为了迎合这个潮流,Delph先后出现了跨平台版,ios编程版,安卓开发版,移动开发洞州迟版。但是,这个时候的后起之秀层出不穷,Delph的后续版本在中国基本没有公司在用。
VB、Delphi等编程语言前浪所以会被java为代表的后浪编程语言取代,最大的原因是软件公司为了支持向上兼容(Upward Compatible),需要花费巨大的资源去维持老语言的功能特性。1990年代的各种程序,依然在各种Windows窗体上跑得起来,可见兼容性之强。你对比一下国内的各种ERP产品,升个级,原来的二开程序就报错了,真是天上地下。实现向上兼容需要公司花费巨大的成本,这种成本在开源社区模式没有火起来之前,只能靠公司负担,即便微软也受不了。
Java也出来很多年了,这个负担也呈现出来了,没落是迟早的事情。语言毕竟是人造的,向上兼容只有上帝才能低成本的实现出来。各种生命,一定是向上兼容的。编程语言,还远远不到这个境界。
VB是没落了,Delphi近些年市场虽然衰退,在国外还是很流行的!最新版Delphi版本是DX10.3,依然是无与伦比的。DX10.3是跨平台的框架,同时支持Delphi和C++,几乎可以开发PC、平板、安卓和苹果手机程迹岁序,代码重复性非常高,开发效率无与伦比!
VB6是微软停止开发了而已。继任者VB.NET,欧美日台和工控领域用的人多一点,再就是原来VB6的老码奴用。 国内.net基本上都用C#,语法和Java相通。VB.NET我也用过, 语法可能是看起来有点啰嗦,实际上和花括号差别不大,毕竟在IDE里面写代码,都是自动补全。Delphi没落主要是没竞争过微软,领头人都被挖走开发C#了。然后公司方向错误,押宝在跨平台开发上,错过web发展的 历史 机遇。
VB、Delphi等基于CS的编程语言的没落,起于BS架构的瘦客户端兴起,败于移动端的普及。
但是也不用夸大其词,认为CS架构如何无用。只是对于绝大多数的普通用户而言,基于浏览器和移动端的应用系统已基本满足日常所需。
这只是业务领域细分的结果,很多编程语言开始更加强调垂直领域的应用,从“主流”变得“小众”而已。比如,浏览器是什么语言做的?OS呢?DB呢?IDE呢?其它就更别提各类专业的工具软件和底层应用,各类驱动等。
前端的轻量化,不代表后端同样的轻量化,相反,后端/服务器端往往为了追求稳定性,可靠性,基本就是这类“没落”语言一统天下。
其实,没有谁好谁坏,谁强谁弱,存在即合理。
Delphi没有没落。
说Delphi没落的人估计没有跟着Delphi XE进步,10.3后的版本非常好用,开发手机APP效率很高,还支持跨平台。
VB也没有没落。在windows上用VBA或VB Script做基于office套件的开发很高效。
如果在windows下做人机界面特别是数据库应用,Delphi控件或VB控件,好用高效还好看。如果基于windows DLL做应用,流畅快捷。
如果不喜欢Pascal风格,可以用C++Builder,与Delphi开发环境相同。
时代变了,赶不上时代变化。
他们都是适合pc windows开发,所以这点就是落伍原因。
后台开发,不行,因为大部分跑在linux上。
移动开发,不行,因为是android和ios。
即便是pc前端,现在用js的是主流,即使是需要本地性能,那也是qt多。
这些人不懂vb在这里叽歪,vb仍然好用,尤其是在企业,用vb开发的桌面程序很多。企业不需web端,极不安全,C/S是编译后运行,安全性同web不是一个量级的,而且企业处理事务不可能用手机,此外vb在win7、8、10都没一点问题,不支持的说法是怎么来的。
一、VB和Delphi的设计理念不同,是否落败的结论和原因也就不同。 1、职业开发工具Delphi
Delphi是编译型的,和其他高级语言一样,是针对专业开发人员而设计的,它的使用对象是职业IT。 职业IT的开发工具非常多,市场竞争本来就激烈,很容易一步错,步步错。 这倒不是技术上的原因,而是市场的原因。就像VB.Net,在前期折腾中,错失市场。整个开发的容量就那么大,位置被占了,就再也没有了。Delphi也差不多,在商业买卖中,连创始人都跑去做C#了,后续版本的未来也就可以想象了。
但这并不影响已发行版本的使用,这跟VB6一样,该干嘛干嘛。所以 说这些工具已死的说法,是站不住脚的。 但作为专业的高级开发语言而言,它必须在高级的路上不断的进化,才会有开发人员使用。大量开发人员的使用,才会降低项目的实施成本。相反,如果得不到进化,那么开发的人才资源,就会逐渐枯竭,从而提高项目的成本,进而影响项目的技术路线。 对于专业开发人员而言,掌握一项停止进化的的高级开发语言,就意味着工作机会的收缩。
但这对于一项可实施的技术而言,并不妨碍它继续工作。所以 这种落败,不是指技术,而是指就业机会的凋零。 就VB和Delphi而言,只要不用于糊口的工作,他们仍然是桌面应用开发的一把好手。
2、非职业开发工具VB早在1962年的DOPE时,该语言就明确针对教学,到后来的BASIC,更是有学生参与开发。所以在VB进化的起点处,易用就是其最大的特点,那VB使用对象自然就是非职业IT。随着VB的发展,继续保持了易用性,虽然陆续加入了专业开发的元素(可参阅《VB前传,从教学到 游戏 ,再到系统,似乎每步都是精心设计 》和《早判了,VB已死,但我说话了么? 》),但非专业群体很快就占据了绝对优势。也正是广大非IT的人民大众,将微软推上了今天的位置,这其中VB功不可没。
但随着微软坐稳个人PC的霸主地位后,软件行业的战火已经烧到了互联网。JAVA的迅速崛起,让微软不得更换战略。 跨平台属性呼之欲出,有着沉重 历史 包袱的VB,显然已不再符合这场战斗。其实在1995年VB4.0时,也就是JAVA首个版本发行的那年,微软在核心战略上就已经转向了,VB走向VBA,为VB后续的退位埋下了伏笔。
随着.Net框架的诞生,VB开始走向幕后。近10年以后,微软官方才迟迟宣称,不再继续更新VB。据称经后来统计,VB生产的代码量是C/C++的数十倍之多,这足以理解官宣为何迟到这么久。 直到今天,微软仍然没有宣称不再系统级支持VB,在Win10上,VB仍然在系统支持范围内。
熟悉微软 历史 的人,很清楚个人PC与VB、与微软之间的关系。VB属于普通人,个人PC属于普通人,Windows系统更是属于普通人。微软当年依仗Basic,这个非专业玩具,才获得了普通人的选票。这些选票,微软不会轻易地就交出来。到今天,VB是不再更新了,仿佛停留在了32位机时代,曾经很多靠VB6吃饭的人,凭借VB6很难再找到工作。 VB是没落了,不过没掉的是专职的那一部分人,VBA和VBS却堂而皇之地睡在64位机里继续保护着Office的生态。
远离商业的烦扰,VB终于回归到了最初的样子,在VBA的世界里,让成千上万的普通人,继续,学习计算机,使用计算机,热爱计算机。 就连VB让道的C#,也只能与其他开发工具一样,使用接口开发Office。
或许有一天,微软会彻底升级Office,会给大家一个更好的VBA。但在这之前,微软需要考量的是,VBA里那些沉默的大多数,生产的代码量,可能又增加了不止数十倍了。
从所有开发语言的发展 历史 来看,也只有VB是专为非职业IT而生。 更多非职业IT技术内容,请关注BtOfficer,获取阅读,为非IT人士带来职业IT的视角,正是时候。
vb是本来就烂,delphi没落是因为没跟上潮流,b/s大行其道的时候,她还主要支持c/s开发,为自己的傲慢买了单
vb没太多用,但是说delphi没落属于过分吧。 delphi到xe时代的确乱,个人感觉定位不明确,做个毛线的跨平台,但是从c/s系统,或者win32平台,delphi非常便捷, 一些小东西用delphi很快的。吐槽下,跨平台就有些扯了(本人不搞安卓,ios和osx 还是用原生或者H5)。稳定性还是差。编译包巨大。不好好固守自己的领域乱搞一气。 目前老衲一般编写软件 win用delphi(除非必要,还在用delphi2010,很多时候用delphi2010写dll 用xe写UI ),如果双平台,ios 和osx 用oc(一般用delphi先写win版本,然后翻译成oc,可能是个人习惯,用delphi 调试和编译快,在编写的时候注意要跨平台)dll 一般用vc++或者delph7 或者delphi2010。 如果需要网络数据传输一般用php,或者java 等(考虑到跨跨平台,这个可以通用,传递回json)