当前位置:首页 » 编程语言 » c语言总是有些花里胡哨的东西
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

c语言总是有些花里胡哨的东西

发布时间: 2022-08-04 17:50:59

① 学编程需要指点

1、VC、VB、Delphi …… ,你该学哪个?

具体到编程而言,我要告诉你:任何一种计算机语言,都是计算机科学理论的载体或表现形式。C++很神吗?Java很酷吗?
它们差距很远吗?是的。但从理论的层面上讲,它们没有区别,都是“面向对象”理论的一个具体形式而已。

现在的程序员们被发行编译软件(通常我们将其称为“系统软件”)的商家不断推出的产品搞得眼花缭乱,头痛欲裂。
不断地跟在新语言后面跑,这条路还没跑到头,那边的“新路”又鸣锣开张了,于是再跟着跑……渐渐地有些人开始感叹:
学海无涯、学无止境,或什么“程序员是青春饭,过了三十别想干”…… 在此我不得不叹息:中国的教育真是一种“形而上学”
的教育。早在高中时代我们就学过“辨证唯物主义”的基本理论:做事情要抓主要矛盾。这一条恐怕谁都知道,却鲜见谁能在
实践中把这一理论运用得“炉火纯青”的。把这一理论运用到编程上来讲就是:

理论是主要矛盾,语言是次要矛盾,学会了理论,再具体到学一种语言时,你只不过是在进行某种消遣而已。

现在学VC的普遍看不起学VB的或学Delphi的。但如果一个用Delphi的人,在需要写web程序时,用TCP/IP做了一个构架,
嵌入到应用程序中;而另一个用VC的人却只会把一个又一个的组件拖来拉去的做些个“例子程序”的翻版。你说他们两个谁历害?
Delphi和VC谁历害? 真应了这样一段话,问:纽约好还是上海好?答:有钱哪儿都好,没钱哪儿都不好。上海的富人并不比纽约
的富人少多少的优越感,而纽约的乞丐也不比上海的乞丐多多少幸福感。

现在你还会说学VC的人就一定比学Delphi的人水平高、“钱景”好吗?

2、“浅薄”绝不该是中国程序员的性格特征!!!

想问一句:中国程序员这么多,你们真地把基础理论学好了吗?别用你现有的编程经历告诉我:编程不需要数学,不需要数据结构,
不需要编译原理…… ……说话得负责任,您知道吗?我之所以发表这篇文章,就是因为再也看不下去这种在中国编程界漫延的歪理
邪说了!邪教害死的是人的个体,你们害死的是中国软件业的未来!如果再让这种理论继续毒害编程新手的思想,中国将在计算机
领域失去民族的尊严!!!

请问,操作系统、编译软件、数据库系统…… 这些被称为“系统软件”的东东,中国有几样拿得出手的产品?也许是我孤陋寡闻,
据我所知:我们国家一件像样的也没有。

不错,我们是有一些网站的股票在西方上市了,我们是有一些人被国外公司请去做高级职员了,我们也有一些人把西方的官方网站
给黑了……但是,我们用的编译工具是谁的产品?我们微机里装得是谁做出的操作系统?我们的程序跑在谁的芯片上?

爱之深,恨之切。我爱的是中国,但我痛恨不是中国,而是在中国编程界普遍流行的“浅薄”和“自以为是”,这是我们民族软件业
的一颗毒瘤!

是的,现在编程方面快速入门的书满天飞,让程序员的门槛越来越低。我这个外行就得益于这个“低门槛”,跑了进来。但进来后,
我们就不能再这样浅薄下去了——我的兄弟们!

用他国提供的工具做几个网站,写几个应用程序,弄出几个病毒…… 是振兴不了民族软件业的。顺便说一句:我尊敬求伯君,
但我不认为金山公司和其系列产品配得上被称为“民族软件业”的大旗,相对这个称号,它差得太远了。

…… ……

写flash软件的人会认为用flash做动画的人比他历害吗?Adobe公司真的认为考取Adobe证书的人是“人才”吗?MSCE、MSCD……
通过这类考试得到微软徽章的人,在微软眼里是“人才”还是“义务推销员”?持这类证书以及其他一些大软件公司认证的人,你们
还在以为自己是“中国软件业的精英”而感叹“怀才不遇”、工资太少吗?

醒醒吧,朋友。别再用编程不需要理论的话来自欺欺人了,别再用自己的浅薄来教导别人像自己一样浅薄了。我想问问那些称数学、
数据结构等基础课程对编程没用的人:

请你们搞清一个概念:是这些理论“没用”,还是你们“没用到”;是你们“没用到”,还是你们的水平根本“用不到”;是你们
“不需要用”,还是你们根本“不会用”? 举个例子,操作系统中的工作调度,若工作优先权相同,用什么方法进行调度?当然是
“先到先做”—

—这就是数据结构中“队列”的应用。你们说“用不到”,只怕是因为到目前为止还没机会接触这类“高端编程”的挑战吧?这样的话,
那就算了,挣你的钱去,但别再来这里误人子弟,吹嘘什么优秀的程序员不需要理论。

是谁说系统软件发展的黄金时代已经过去了?Linux不就是在MS操作系统雄霸多年的情况下一举成名的吗?中国难道就找不到这样一
个机会? 不,如果我们的程序员克服了现在的浮燥与急功近利,我们一样可以在“系统软件”这一软件业的“高端”树立自己的品牌!
所以请看下面——

3、年轻人应该有宏伟的志向。

用别人的产品做自己的东西,你永远只是个“高级客户”,成不了真正的开发者。不管你用他国的系统软件开发出多少好的产品,
挣了多少钱,只要人家一升级、或一推出新产品,你口袋里的银子连同最后一条小裤叉也会被剥夺得一干二净。你,只不过是一个高级
打工仔。

我希望打算进入编程界的朋友们,特别是现在还很年轻的朋友,能有一个比较高的志向。更希望已经进到这行的朋友们能有以“振兴民族
软件业”为己任,力争成为中国软件业的“旗手”。

我不赞同方东兴把微软骂得一无是处。更不赞同年轻人学他那样,一赌气而拒绝用微软的产品,拒绝Windows、拒绝VC 、拒绝IE ……

我认为方东兴只是个狭隘的民族主义者。他看到了中国软件业民族的一面,却不愿承认我们落后的一面。毫无根据的“自尊”等于自取灭亡。
清朝末年,我们的科技并不落后于西方多少,但我们过分“自尊”的“大国思想”却使我们失去了向其他国家学习的机会。当我们嘲笑西方
人的蓝眼睛、大鼻子的时候,他们的坚船利炮,却把我们“央央大国”的皇帝、太后打得满世界逃难。慈禧太后被打得满地找牙的时候,
不得不说出“量中华之物力,博与国之欢欣”的龌龊话,此时,她“大国皇太后”的自尊何在呢?前面自尊过了头,事后必遭报应。这报应
一持续,就是几百年,直到现在。难道我们还要继续闭门造车,再走老路吗?

我们现在承认微软比我们强,向微软学习,并不等于我们永远要跟在他后面跑!在我们低下头的时候,我们就应该想到,何时能再抬起这
颗高贵的头颅!!!而且是“一定”!!!!!自尊不是错,错是错在“太盲目”——妄自尊大,你就要和慈禧一样被打得满地找牙。
做为一个大国,一个明智的民族,我们不能讳疾忌医。

年轻人,志当存高远。相信我,当你以民族振兴为己任的时候,封王称帝、富贵荣华,都只不过是千秋伟业的一个副产品。在这个尊重
知识、崇尚科学的年代,志向高远的人,永远不必担心自己的“钱途”。 不必讳言,我承认我当初进入编程领域不完全出于兴趣,
也有“钱途”方面的考虑。但就好像当年参加八路的战士当中,有些只是报着能吃上军粮或打鬼子报家仇的思想入伍的,但后来却学习
了马列,提高了觉悟,转为以兴国救民为目标一样,当我一步步深入到这行以后,当我决定考研并慢慢提高了认识以后,我的目的变了。
我觉得应该有个更高的人生目标,更高志向和追求来支持我的行动。这个目标就是:为民族软件业尽一把自己的力。

真心希望你与我同行。

4、几点建议:

建议大家耐下心来先学好理论,然后再选择具体的工具或语言。不过,在所有这一切开始以前,先打好c语言和汇编基础。

能不能得道,就看你在见到别人做出一些花里胡哨的东西时,是不是能坚定信心、耐住寂寞、抵御诱惑了。

一个和我一起学习C语言的人,学完就直接开始玩VC,而我则潜下心来学了些C++和理论方面的东西。早早地,他就能仿照书上用
VC做些界面似的东西在我面前炫耀,可后来,当我基础理论的学习告一段落,做个图书管理程序卖了800大洋时,他还只是停留在做
“例子程序”的水平上。现在我们谈论起编程,

深度早已不可同日而语了。他起跑领先,却落在了后面。

我不敢自以为是,只是想用这个亲身经历告诉大家:学编程,决不可心浮气燥。

5、结束语

我的话触到许多人的痛处,而且由于写时心中气愤难平,有些出言不逊,可能要遭人骂了。不过,既然

写了,就不怕骂。因为:以上所言全是忠告,识不识货,就看您的眼光了。

② c语言相关

有没有特效, 并不是编译的问题。 而是你是否引入图形库。
比如 codeblocks 可以加载QT或者minigui一类的图形库,来制作界面。
或者用VS, 加载MFC或windows API设计界面。

③ 我是刚学习C语言编程的,但就是经常有些搞不懂,怎样才能学好呢希望给些指点!

算法方面是自己的数学思维问题,这个要求有数学基础,以及数学思维,这关乎到程序的最优化问题。
结构方面的学习就活一些,至少C语言的格式要记住,这需要多练,多写一些小程序来调试,用来发现自己的不足,比如定义整形,输出符号就要整形,定义浮点型,输出也必须是浮点型这一类的微小问题。
编程语言是一类要求严谨的语言,要心细,想学好首先要记住固定的语法中的一些小陷阱,在有一定基础之后可以看K&R这本基于C89的经典教材,主要是实践,自己编写程式来解决实际问题,然后有问题之后不断调试,实在不懂的东西在思考之后才问,最主要的就是多练,当书本都写的不清不楚的时候,就上机把程序写上,自己调试总是会懂的。
基于WINDOWS的学习环境,学好C语言这个不好说,毕竟编译方面不会懂,建议楼主去找个LINUX的环境来学习,这样能包含编译方面知识。
各种编译软件之间会有区别,这对程式来说也重要,2种不同的编译会有2种不同的结果。
送楼主一句话,剔除掉所有不可能之后,即使看起来再不可能,那也是真理!

④ c++里面有很多花哨的写法但他们实不实用呢

这看你是在编写什么程序,很多花俏不容易理解的代码在正规的软件编程中很少被用的,但有时候为了缩小代码量提高程序的效率等等因素可能会用一些比较技巧性的代码(可能就是你指的花哨代码了),同时编写这些代码和编写者性格编程习惯有关系的 最后“常量指针 或者指针常量之类的这些东西”不是花哨的代码,这是很正规代码,只是你对概念不熟悉,熟悉了就没什么了,所谓的花哨其实就是中技巧性编程,当然也有些人在程序使用时为了显示自己的编程技术了,总之真正很花哨的代码是很少用于软件开发中的,比如iccxx(C语言混乱编程)里面的代码就是很花哨很技巧性的但事实中是不提倡使用的,也没人会用于实际开发中

⑤ 编程怎么入门

学编程,决不可心浮气燥。任何实践都是……

我认为有些人的观点错了。错得一塌糊涂。
对于这个问题,我的基本观点是:任何实践都是理论的载体或表现形式。而理论也是由实践上升而来的。两者是辨证的。今天,我们只关注它的前一部分:任何实践都是理论的载体和表现形式。
我不是想故弄玄虚,但真理的外表看上去往往就是这么奇形怪状、难以理解。让我来给你解释一下吧。
比如:战争是军事理论的实践,也是它的表现形式。战争的胜负取决于指挥者军事理论的掌握程度(别给我举赵括这类“纸上谈兵”的反例,他们根本算不上掌握了军事理论,充其量只算是“背”下了军事理论。“掌握”和“倒背如流”这是两个概念。)

1、VC、VB、Delphi …… ,你该学哪个?
具体到编程而言,我要告诉你:任何一种计算机语言,都是计算机科学理论的载体或表现形式。C++很神吗?Java很酷吗?它们差距很远吗?是的。但从理论的层面上讲,它们没有区别,都是“面向对象”理论的一个具体形式而已。
现在的程序员们被发行编译软件(通常我们将其称为“系统软件”)的商家不断推出的产品搞得眼花缭乱,头痛欲裂。不断地跟在新语言后面跑,这条路还没跑到头,那边的“新路”又鸣锣开张了,于是再跟着跑……渐渐地有些人开始感叹:学海无涯、学无止境,或什么“程序员是青春饭,过了三十别想干”……
在此我不得不叹息:中国的教育真是一种“形而上学”的教育。早在高中时代我们就学过“辨证唯物主义”的基本理论:做事情要抓主要矛盾。这一条恐怕谁都知道,却鲜见谁能在实践中把这一理论运用得“炉火纯青”的。把这一理论运用到编程上来讲就是: 理论是主要矛盾,语言是次要矛盾,学会了理论,再具体到学一种语言时,你只不过是在进行某种消遣而已。
现在学VC的普遍看不起学VB的或学Delphi的。但如果一个用Delphi的人,在需要写web程序时,用TCP/IP做了一个构架,嵌入到应用程序中;而另一个用VC的人却只会把一个又一个的组件拖来拉去的做些个“例子程序”的翻版。你说他们两个谁历害?Delphi和VC谁历害?
真应了这样一段话,问:纽约好还是上海好?答:有钱哪儿都好,没钱哪儿都不好。上海的富人并不比纽约的富人少多少的优越感,而纽约的乞丐也不比上海的乞丐多多少幸福感。
现在你还会说学VC的人就一定比学Delphi的人水平高、“钱景”好吗?

2、“浅薄”绝不该是中国程序员的性格特征!!!
想问一句:中国程序员这么多,你们真地把基础理论学好了吗?别用你现有的编程经历告诉我:编程不需要数学,不需要数据结构,不需要编译原理…… ……说话得负责任,您知道吗?我之所以发表这篇文章,就是因为再也看不下去这种在中国编程界漫延的歪理邪说了!邪教害死的是人的个体,你们害死的是中国软件业的未来!如果再让这种理论继续毒害编程新手的思想,中国将在计算机领域失去民族的尊严!!!
请问,操作系统、编译软件、数据库系统…… 这些被称为“系统软件”的东东,中国有几样拿得出手的产品?也许是我孤陋寡闻,据我所知:我们国家一件像样的也没有。
不错,我们是有一些网站的股票在西方上市了,我们是有一些人被国外公司请去做高级职员了,我们也有一些人把西方的官方网站给黑了……但是,我们用的编译工具是谁的产品?我们微机里装得是谁做出的操作系统?我们的程序跑在谁的芯片上?
爱之深,恨之切。我爱的是中国,但我痛恨不是中国,而是在中国编程界普遍流行的“浅薄”和“自以为是”,这是我们民族软件业的一颗毒瘤!
是的,现在编程方面快速入门的书满天飞,让程序员的门槛越来越低。我这个外行就得益于这个“低门槛”,跑了进来。但进来后,我们就不能再这样浅薄下去了——我的兄弟们!
用他国提供的工具做几个网站,写几个应用程序,弄出几个病毒…… 是振兴不了民族软件业的。顺便说一句:我尊敬求伯君,但我不认为金山公司和其系列产品配得上被称为“民族软件业”的大旗,相对这个称号,它差得太远了。
…… ……
写flash软件的人会认为用flash做动画的人比他历害吗?Adobe公司真的认为考取Adobe证书的人是“人才”吗?MSCE、MSCD…… 通过这类考试得到微软徽章的人,在微软眼里是“人才”还是“义务推销员”?持这类证书以及其他一些大软件公司认证的人,你们还在以为自己是“中国软件业的精英”而感叹“怀才不遇”、工资太少吗?
醒醒吧,朋友。别再用编程不需要理论的话来自欺欺人了,别再用自己的浅薄来教导别人像自己一样浅薄了。我想问问那些称数学、数据结构等基础课程对编程没用的人:
请你们搞清一个概念:是这些理论“没用”,还是你们“没用到”;是你们“没用到”,还是你们的水平根本“用不到”;是你们“不需要用”,还是你们根本“不会用”?
举个例子,操作系统中的工作调度,若工作优先权相同,用什么方法进行调度?当然是“先到先做”——这就是数据结构中“队列”的应用。你们说“用不到”,只怕是因为到目前为止还没机会接触这类“高端编程”的挑战吧?这样的话,那就算了,挣你的钱去,但别再来这里误人子弟,吹嘘什么优秀的程序员不需要理论。
是谁说系统软件发展的黄金时代已经过去了?Linux不就是在MS操作系统雄霸多年的情况下一举成名的吗?中国难道就找不到这样一个机会? 不,如果我们的程序员克服了现在的浮燥与急功近利,我们一样可以在“系统软件”这一软件业的“高端”树立自己的品牌!所以请看下面——

3、年轻人应该有宏伟的志向。
用别人的产品做自己的东西,你永远只是个“高级客户”,成不了真正的开发者。不管你用他国的系统软件开发出多少好的产品,挣了多少钱,只要人家一升级、或一推出新产品,你口袋里的银子连同最后一条小裤叉也会被剥夺得一干二净。你,只不过是一个高级打工仔。
我希望打算进入编程界的朋友们,特别是现在还很年轻的朋友,能有一个比较高的志向。更希望已经进到这行的朋友们能有以“振兴民族软件业”为己任,力争成为中国软件业的“旗手”。
我不赞同方东兴把微软骂得一无是处。更不赞同年轻人学他那样,一赌气而拒绝用微软的产品,拒绝Windows、拒绝VC 、拒绝IE ……
我认为方东兴只是个狭隘的民族主义者。他看到了中国软件业民族的一面,却不愿承认我们落后的一面。毫无根据的“自尊”等于自取灭亡。清朝末年,我们的科技并不落后于西方多少,但我们过分“自尊”的“大国思想”却使我们失去了向其他国家学习的机会。当我们嘲笑西方人的蓝眼睛、大鼻子的时候,他们的坚船利炮,却把我们“央央大国”的皇帝、太后打得满世界逃难。慈禧太后被打得满地找牙的时候,不得不说出“量中华之物力,博与国之欢欣”的龌龊话,此时,她“大国皇太后”的自尊何在呢?前面自尊过了头,事后必遭报应。这报应一持续,就是几百年,直到现在。难道我们还要继续闭门造车,再走老路吗?
我们现在承认微软比我们强,向微软学习,并不等于我们永远要跟在他后面跑!在我们低下头的时候,我们就应该想到,何时能再抬起这颗高贵的头颅!!!而且是“一定”!!!!!自尊不是错,错是错在“太盲目”——妄自尊大,你就要和慈禧一样被打得满地找牙。做为一个大国,一个明智的民族,我们不能讳疾忌医。
年轻人,志当存高远。相信我,当你以民族振兴为己任的时候,封王称帝、富贵荣华,都只不过是千秋伟业的一个副产品。在这个尊重知识、崇尚科学的年代,志向高远的人,永远不必担心自己的“钱途”。
不必讳言,我承认我当初进入编程领域不完全出于兴趣,也有“钱途”方面的考虑。但就好像当年参加八路的战士当中,有些只是报着能吃上军粮或打鬼子报家仇的思想入伍的,但后来却学习了马列,提高了觉悟,转为以兴国救民为目标一样,当我一步步深入到这行以后,当我决定考研并慢慢提高了认识以后,我的目的变了。我觉得应该有个更高的人生目标,更高志向和追求来支持我的行动。这个目标就是:为民族软件业尽一把自己的力。
真心希望你与我同行。

4、几点建议:
建议大家耐下心来先学好理论,然后再选择具体的工具或语言。不过,在所有这一切开始以前,先打好C语言和汇编基础。
能不能得道,就看你在见到别人做出一些花里胡哨的东西时,是不是能坚定信心、耐住寂寞、抵御诱惑了。
一个和我一起学习C语言的人,学完就直接开始玩VC,而我则潜下心来学了些C++和理论方面的东西。早早地,他就能仿照书上用VC做些界面似的东西在我面前炫耀,可后来,当我基础理论的学习告一段落,做个图书管理程序卖了800大洋时,他还只是停留在做“例子程序”的水平上。现在我们谈论起编程,深度早已不可同日而语了。他起跑领先,却落在了后面。
我不敢自以为是,只是想用这个亲身经历告诉大家:学编程,决不可心浮气燥。
5、结束语
我的话触到许多人的痛处,而且由于写时心中气愤难平,有些出言不逊,可能要遭人骂了。不过,既然写了,就不怕骂。因为:以上所言全是忠告,识不识货,就看您的眼光了。

⑥ 刚开始学习c语言为什么有很多东西都看不懂而且有很多词(术语)不知道是什么意思,反正就是有大量

先买一本类似课本的书,看过一遍了解基本概念后,买一本带光盘的习题,实际上机操作。慢慢来就好了

⑦ 关于C语言

首先C要比你想象中的强大,你要拿掉你现在从简单程序C程序的看法,还有加减乘除这种想法。

其实你的困惑是每个刚入门的人都有的,产生的原因感觉无非就是觉得你编的程序和现实中应用的程序差距太大造成C语言无用的一种错误印象。

我想你所认为的程序,从你的“简单的WINDOWS程序啊”应该觉得是个图形界面的程序,觉得一个功能强大的程序应该是我们用的图形化界面,这是微软为了普及个人电脑而造成的。作为普通的电脑用户自然要图形界面,这是为了方便他们操作而做的,而作为一个程序员,你还是有必要熟悉字符操作,比如linux下用shell来操作,这里没有图形,没有按钮,有的只是指令。

C语言只能做数学算法,这种想法其实和你现在的水平有关。其实学了微机原理你就知道计算机从物理角度上来说,只能做加和乘(据说有乘法器,不过我没考证过)还有逻辑运算和,或,非,异或。任何一款复杂的应用软件归根结底都是这些操作的集合体,举个简单的例子,游戏算是一个复杂的软件了,游戏上任务的生命值,法力等等这些数值容易理解。图形其实也可以归结为数学,屏幕上以左下角为原点,每个像素就有了自己的坐标,他的颜色可以用三原色来合成表示,那么一个点就有了坐标这2个数字表示位置,颜色三原色可以用0,1,2这3个表示。这也图形就归结成了一个数学问题,这样CPU处理的还是数学问题。当然这是最原始的,后来人们用种种办法去改善计算机来处理图形,计算机图形也是门学问,你可以看一下。

C也提供了图形编程,包括2D和3D,我只记得一个graph.h头文件,其它的不记得了。

没有图形界面的软件难道就不是复杂软件了么,比如你的显卡驱动程序,它有图形操作界面么,但确确实实是一个非常重要的软件。

所以,好好学习C,这是一门不错的语言。图形化是为了方便人们观察的,而且我认识的觉大部分程序员都讨厌去做前台图形界面的工作,他们都认为,我处理好数据就好了,简单的,整齐的显示给他们看就可以了,为什么要整那些花里胡哨而没有任何实际意义的界面呢。