编程开发
GCC,GNU组织开发的开源免费的编译器
MinGW,Windows操作系统下的GCC
Clang,开源的BSD协议的基于LLVM的编译器
Visual C++ :: cl.exe,Microsoft VC++自带的编译器 CodeBlocks,开源免费的C/C++ IDE
CodeLite,开源、跨平台的C/C++集成开发环境
Orwell Dev-C++,可移植的C/C++IDE
C-Free
Light Table
Visual Stdio系列 起初,C语言没有官方标准。1978年由美国电话电报公司(AT&T)贝尔实验室正式发表了C语言。布莱恩·柯林汉(Brian Kernighan) 和 丹尼斯·里奇(Dennis Ritchie) 出版了一本书,名叫《The C Programming Language》。这本书被 C语言开发者们称为K&R,很多年来被当作 C语言的非正式的标准说明。人们称这个版本的 C语言为K&R C。
K&R C主要介绍了以下特色:
结构体(struct)类型
长整数(long int)类型
无符号整数(unsigned int)类型
把运算符=+和=-改为+=和-=。因为=+和=-会使得编译器不知道使用者要处理i = -10还是i =- 10,使得处理上产生混淆。
即使在后来ANSI C标准被提出的许多年后,K&R C仍然是许多编译器的最 准要求,许多老旧的编译器仍然运行K&R C的标准。 1970到80年代,C语言被广泛应用,从大型主机到小型微机,也衍生了C语言的很多不同版本。
1983年,美国国家标准协会(ANSI)成立了一个委员会X3J11,来制定 C语言标准。
1989年,美国国家标准协会(ANSI)通过了C语言标准,被称为ANSI X3.159-1989 Programming Language C。因为这个标准是1989年通过的,所以一般简称C89标准。有些人也简称ANSI C,因为这个标准是美国国家标准协会(ANSI)发布的。
1990年,国际标准化组织(ISO)和国际电工委员会(IEC)把C89标准定为C语言的国际标准,命名为ISO/IEC 9899:1990 - Programming languages -- C 。因为此标准是在1990年发布的,所以有些人把简称作C90标准。不过大多数人依然称之为C89标准,因为此标准与ANSI C89标准完全等同。
1994年,国际标准化组织(ISO)和国际电工委员会(IEC)发布了C89标准修订版,名叫ISO/IEC 9899:1990/Cor 1:1994 ,有些人简称为C94标准。
1995年,国际标准化组织(ISO)和国际电工委员会(IEC)再次发布了C89标准修订版,名叫ISO/IEC 9899:1990/Amd 1:1995 - C Integrity ,有些人简称为C95标准。 1999年1月,国际标准化组织(ISO)和国际电工委员会(IEC)发布了C语言的新标准,名叫ISO/IEC 9899:1999 - Programming languages -- C ,简称C99标准。这是C语言的第二个官方标准。
在C99中包括的特性有: 增加了对编译器的限制,比如源程序每行要求至少支持到 4095 字节,变量名函数名的要求支持到 63 字节(extern 要求支持到 31)。 增强了预处理功能。例如: 宏支持取可变参数 #define Macro(...) __VA_ARGS__ 使用宏的时候,允许省略参数,被省略的参数会被扩展成空串。 支持 // 开头的单行注释(这个特性实际上在C89的很多编译器上已经被支持了) 增加了新关键字 restrict, inline, _Complex, _Imaginary, _Bool 支持 long long, long double _Complex, float _Complex 等类型 支持不定长的数组,即数组长度可以在运行时决定,比如利用变量作为数组长度。声明时使用 int a[var] 的形式。不过考虑到效率和实现,不定长数组不能用在全局,或 struct 与 union 里。 变量声明不必放在语句块的开头,for 语句提倡写成 for(int i=0;i<100;++i) 的形式,即i 只在 for 语句块内部有效。 允许采用(type_name){xx,xx,xx} 类似于 C++ 的构造函数的形式构造匿名的结构体。 复合字面量:初始化结构的时候允许对特定的元素赋值,形式为:
struct test{int a[3],b;} foo[] = { [0].a = {1}, [1].a = 2 }; struct test{int a, b, c, d;} foo = { .a = 1, .c = 3, 4, .b = 5 }; // 3,4 是对 .c,.d 赋值的 格式化字符串中,利用 u 支持 unicode 的字符。 支持 16 进制的浮点数的描述。 printf scanf 的格式化串增加了对 long long int 类型的支持。 浮点数的内部数据描述支持了新标准,可以使用 #pragma 编译器指令指定。 除了已有的 __line__ __file__ 以外,增加了 __func__ 得到当前的函数名。 允许编译器化简非常数的表达式。 修改了 /% 处理负数时的定义,这样可以给出明确的结果,例如在C89中-22 / 7 = -3, -22% 7 = -1,也可以-22 / 7= -4, -22% 7 = 6。 而C99中明确为 -22 / 7 = -3, -22% 7 = -1,只有一种结果。 取消了函数返回类型默认为 int 的规定。 允许 struct 定义的最后一个数组不指定其长度,写做 [](flexible array member)。 const const int i 将被当作 const int i 处理。 增加和修改了一些标准头文件,比如定义 bool 的 <stdbool.h> ,定义一些标准长度的 int 的 <inttypes.h> ,定义复数的 <complex.h> ,定义宽字符的 <wctype.h> ,类似于泛型的数学函数 <tgmath.h>, 浮点数相关的 <fenv.h>。 在<stdarg.h> 增加了 va_ 用于复制 ... 的参数。里增加了 struct tmx ,对 struct tm 做了扩展。 输入输出对宽字符以及长整数等做了相应的支持。 GCC和其它一些商业编译器支持C99的大部分特性。 2011年12月8日,国际标准化组织(ISO)和国际电工委员会(IEC)再次发布了C语言的新标准,名叫ISO/IEC 9899:2011 - Information technology -- Programming languages -- C ,简称C11标准,原名C1X。这是C语言的第三个官方标准,也是C语言的最新标准。
新的标准提高了对C++的兼容性,并增加了一些新的特性。这些新特性包括: 对齐处理(Alignment)的标准化(包括_Alignas标志符,alignof运算符, aligned_alloc函数以及<stdalign.h>头文件。 _Noreturn 函数标记,类似于 gcc 的 __attribute__((noreturn))。 _Generic 关键字。 多线程(Multithreading)支持,包括: _Thread_local存储类型标识符,<threads.h>头文件,里面包含了线程的创建和管理函数。 _Atomic类型修饰符和<stdatomic.h>头文件。 增强的Unicode的支持。基于C Unicode技术报告ISO/IEC TR 19769:2004,增强了对Unicode的支持。包括为UTF-16/UTF-32编码增加了char16_t和char32_t数据类型,提供了包含unicode字符串转换函数的头文件<uchar.h>. 删除了 gets() 函数,使用一个新的更安全的函数gets_s()替代。 增加了边界检查函数接口,定义了新的安全的函数,例如 fopen_s(),strcat_s() 等等。 增加了更多浮点处理宏。 匿名结构体/联合体支持。这个在gcc早已存在,C11将其引入标准。 静态断言(static assertions),_Static_assert(),在解释 #if 和 #error 之后被处理。 新的 fopen() 模式,(“…x”)。类似 POSIX 中的 O_CREAT|O_EXCL,在文件锁中比较常用。 新增 quick_exit() 函数作为第三种终止程序的方式。当 exit()失败时可以做最少的清理工作。
‘贰’ 电脑编程和软件开发一样么
你好:
电脑编程和软件开发。
如果你想学这个,我还是见意你读大学。
利用的对编程方面的兴趣。
到大学里,系统的学习这方面的知识。
需然外面好多地方,宣传3个月包学会、什么什么系统学习。
但不会全面。
这样说吧,你用三个月,学习一门语言。
但大学里,你会用3年时间,系统的学习所有语言的基础。
编程语言有C、C#、JAVA、PHP、HTML、ASP等等。
你要用多少时间去系统学习?
需然很多人说,只要学会一门,第二门就很快。
但学院有一个外面没的有条件,就是专心。
你可以安静的学习会所有语言的基础,不用分心。
可以上学的时候,不要想外面的世界。
因为你到外面的世界里,只会想学院。
‘叁’ 如何学习编程开发
学习C语言最好的书籍:《C语言程序设计:现代方法》(第二版)
推荐理由:该书无论是对C语言整体的把握,还是对语言细节的解释都非常的详细到位,另外这本书里介绍了比较现代的C语言程序设计风格,有助于帮你养成良好的编程习惯及规范。
C语言圣经:《C程序设计语言》(第二版)
推荐理由:这本书是C语言最经典的书籍,然而并不推荐你初学就看,这本书奇薄无比,但是书中讨论的问题多是比较底层的话题,初学者看容易头晕,有人专门为该书编写有习题册,可以一起购买。
其它推荐书籍:
《C专家编程》《C陷阱与缺陷》《你必须知道的495个C语言问题》
另外还有几点你需要知道的问题:
1)C语言是属于高级语言里最低级的(并不是最简单的,恰恰相反,C语言语法虽精炼简单,但非常难学,难学的理由马上就讲),如果你是想很快上手编写一些看得见摸得着的软件,不建议你学C语言。
2)光学C语言,编程是远远不够的,之前说过C比较“低级”,是因为如果你想用C做东西,很多事情必须要自己动手来做,最起码你要会自己组织数据,也就是学习“数据结构”课程(数据结构课程你也完全可以自学,先修知识已经足够了)。
3)不要去看大学里通用的课本即谭浩强老师的《C程序设计语言》,这本是垃圾,你不应该允许它出现在你的书架上。
4)如果学习C语言,不要总是想着去用它做一些带窗口的软件,C往往不是用来干这个的,C是用于系统级编程的。
5)光看书没用,必须动手去编程,亲自动手编程的重要性大于看书10倍,做课后习题是一个很好的习惯(不带夸张的)。
6)如果有机会,建议参加青少年的信息学竞赛,会对你数据结构,离散数学,算法等能力得到很大的锻炼。
‘肆’ 怎样学习编程开发
学习编程是一件好事,不要认为编程很难,其实它并不难,不过之前你得先了解你学习编程的目的是什么?这个很重要,因为目的决定你的发展方向。目前对于编程有很多种编程语言以及相对应的开发软件,根据你的情况选一种语言进行专业学习,不要盲乱学习。编程是一种融汇贯通的东西,学会基础到后边就越来越简单了。而且可以向多种语言发展。因为毕竟世上没有永远不过时的东西嘛!下面说明一些常用的编程语言。
C语言 是一种可移植性和多系统平台的编程语言
JAVA 是一种功能强大可移植性强的开发语言
HTML 是一种超文本标记语言
Java Script 是一种基于客户端的脚本语言
程序语言,顾名思义就是一种语言,是用于交流的,程序就是计算机的语言和人类语言的翻译者,做一个程序员就是要把人类世界的问题用计算机的方法去解决和展现,可是因为种种原因,大多数人在如何学好语言,如何学好开发平台上疲于奔命,到头来你只会敲写代码。如果想做一个合格的程序员,C++、JAVA、sql、都是一定要学的,另外,不要去学你喜欢的,也不要去费劲脑子想该学什么,看看IT界,IT市场需要什么,你就学什么。
新手学编程要从根本出发
从理论上来说,需要广泛的阅读,了解算法的博大精深和计算机的基本理论。
从实践上来说,需要有广泛的练习,练习的广泛在于练习不同的内容。
然后就是创新精神和数学思维能力,这些都是需要培养的。
基础要打好
学编程要具备一定的基础,总结之有以下几方面:
(1)数学基础 、从计算机发展和应用的历史来看计算机的数学模型和体系结构等都是有数学家提出的,最早的计算机也是为数值计算而设计的。因此,要学好计算机就要有一定的数学基础,出学者有高中水平就差不多了。
(2)逻辑思维能力的培养 、学程序设计要有一定的逻辑思维能力,“思维能力”的培养要长时间的实践锻炼。要想成为一名优秀的程序员,最重要的是掌握编程思想。要做到这一点必须在反复的实践、观察、分析、比较、总结中逐渐地积累。因此在学习编程的过程中,我们不必等到什么都完全明白了才去动手实践,只要明白了大概,就要敢于自己动手去体验。谁都有第一次。有些问题只有通过实践后才能明白,也只有实践才能把老师和书上的知识变成自己的,高手都是这样成材的。
(3)选择一种合适的入门语言、 面对各种各样的语言,应按什么样的顺序学呢?程序设计工具不外乎如下几类:
1.本地开发应用软件开发的工具有:Visual Basic 、Delphi 、VC++ ( C++ Builder ) 等;数据库开发工具有:Visual Foxpro 、Oracle Developer 、Power Builder 等。
2.跨平台开发开发工具如 Java 等。
3.网络开发对客户端开发工具如:Java Script 等;对服务器开发工具如:PHP 、ASP 、JSP 、ISAPI 、NSAPI 、CGI 等。以上不同的环境下几种开发工具中 VB 法简单并容易理解,界面设计是可设化的,易学、易用。选 VB 作为入门的方向对出学者是较为适合的。 (但现在已经过时)
培养好的编程习惯
编程入门不难,但入门后不断学习是十分重要的,相对来说较为漫长。在此期间要注意养成一些良好的编程习惯。编程风格的好坏很大程度影响程序质量。良好的编程风格可以使程序结构清晰合理,且使程序代码便于维护。如代码的缩进编排、变量命令规则的一致性、代码的注释等。
多问多学习
掌握编程思想必须在编程实际工作中去实践和体会。编程起步阶段要经常自己动手设计程序,具体设计时不要拘泥于固定的思维方式,遇到问题要多想几种解决的方案。这就要多交流,各人的思维方式不同、角度各异,各有高招,通过交流可不断吸收别人的长处,丰富编程实践,帮助自己提高水平。亲自动手进行程序设计是创造性思维应用的体现,也是培养逻辑思维的好方法。
总结
1、先照书上的题目写,题目的设计是有道理的巩固基础知识。
2、找数学题,写个小程序解决,熟悉算法和基础函数。
3、自己出题目,小一点的,如自编资源管理器、自编写字板之类,练习WINDOWS下的编程。
4、结合身边的事,找个中等课题,或看别人的程序,自已想办法实现。
5.把教材中的例子,自己仿照着写一遍,上机运行,看结果.要知道,任何产品都是有例子的,有机结合或仿照。
6.从自己熟悉的事情入手,如成绩统计,编制一段程序,完成一个功能.然后再完善。
7.要反复破坏代码,从破坏中寻找代码的规律。
8.必须经常反复上机练习。
编程是要用计算机能够识别的语言让计算机去运行,现在所说的语言多指高级语言
‘伍’ 什么是编程开发啊,编程开发有什么用吗编程开发怎么学啊
建议你买本《
程序员
》看看。
编程就是编写
程序
,俗称写
代码
,
计算机
的
软件
,都是编程实现的。
这开发嘛,最好进个培训班,再进个公司,有个机会慢慢学
‘陆’ 编程就是写软件吗
编程是编定程序的中文简称,就是让计算机代为解决某个问题,对某个计算体系规定一定的运算方式,使计算体系按照该计算方式运行,并最终得到相应结果的过程。
为了使计算机能够理解人的意图,人类就必须将需解决的问题的思路、方法和手段通过计算机能够理解的形式告诉计算机,使得计算机能够根据人的指令一步一步去工作,完成某种特定的任务。这种人和计算体系之间交流的过程就是编程。
(6)编程开发扩展阅读
可视化编程也越来越重要,所谓的可视化程序设计和Visual Basic或Visual C++并不同,支持可视化程序设计的IDE可以让开发人员直接移动程序单元来建立流程图和结构图,然后直接做编译或解释,这一类的流程图通常是以UML为基础。
这样的界面因为乐高的Mindstorms开始普及,一些公司也开始透过浏览器Mozilla和分布式程序设计(LabVIEW)往这方面努力。从1980年代开始,第一个可视化程序设计系统—Max,就是以类比合成器的设计为榜样,同时被用来开发即时音乐演出软件。
这种方法也被用在专业软件,例如Openlab,这类的使用者需要完整程序设计语言的弹性,并不想要传统的学习曲线。
‘柒’ 程序员入门:如何自学编程
1、选定方向
编程的世界是多元纷繁的,大的方向就分前端开发、后端开发、移动开发、云计算、数据处理、智能硬件、物联网、虚拟现实等等,光编程语言都几十种。如果没有做过功课,贸然进入只会分分钟懵逼。所以最好是根据自己的兴趣爱好再结合市场前景,先选定一个方向,再选择一门语言,然后头也不回的深深扎进去。
2、优化学习方式
做好笔记,记录经验,我们大多数人并没有过目不忘的神技,很多时候我们学了也不一定马上掌握,需要过后花时间慢慢领悟,而且还有忘掉的风险,所以对于重要的知识点都要做好笔记。
3、多看官方文档,外文资料
互联网是一个更新迭代很快的行业,所有编程语言都会不断的更新新功能和修复旧Bug,网上查的资料很有可能是旧的解决方案,现在已经不适用了。所以最好最快的方法就是查看官方文档。
4、动手做项目
我们学习编程的最终目的就是用所学的做出具有一定功能的项目,而做项目又是最好的学习和巩固知识的方式。如果前期能力不足就先做一些简单的功能模块,一步一步慢慢来,不要一开始就要实现各种酷炫炸天功能,遇到不会的就在网上查, 现在互联网这么发达,获取资源也及其方便。
‘捌’ 怎么样学编程开发
很多人都说最好通过C入门,但是我自身经验告诉我,最好先从一门脚本语言入门,如我的入门是通过PHP。
一开始接触C语言,老是对着一个黑洞洞的框,容易使人丧失兴趣。这些黑框和我们常见的QQ、Office等桌面程序相差实在太远了。而且往往在初学的时候没有人告诉我们控制台应用和图形界面的应用之间的关系。如果对Web感兴趣可以先学点基础的HTML和CSS虽然这在严格意义上不算是编程语言,但是却可以在一开始让你做出一个可以看的到的界面,而且掌握基础还是很简单的,然后在学点后台开发语言,我推荐PHP或者python。
记住,新手最重要的是保持热情!
学习一段时间之后可以自己尝试做一个简单的留言板,别小看这个老土的小东西,这个可是能让你立刻充满成就感。而如果你一开始就上手C这样的成就感就需要更久才能获得,而往往很多新手都躺在了前进的路上。然后,可以在留言板的基础上做出一个简单的博客系统。
记住一定要在每一阶段都做出一个看上去"正常"的东西,而不是一堆代码一执行出来一行行字符那种。这也是我推荐学习HTML和CSS的原因,因为这可以让你简单地搭建一个拥有用户界面的程序。
当你把这些都做完了,如果感到对编程还是有很大兴趣,而且感到自己在渐渐地从心底里喜欢上了编程,那么你再面对那些黑框的时候,就会感觉好很多,而且感到自己真的很酷,你会喜欢把自己想成电影里的黑客。
至于说算法数据结构,等有了兴趣,需要这些知识了,再去慢慢学习,都不会是障碍,而且会变得有趣许多。但是一开始没有任何程序基础,就给你学这些,只能使你迷糊,根本不了解这又什么用。这也是我讨厌现在的大学教育的一个方面,完全违背认知规律。先给你讲一大堆理论,不告诉你为什么,有什么用,让人感到厌恶,但当后来我们真正需要了,却也记不得了,只能从头再学。
最后,我还是要补充一下,对于新接触编程的童鞋,或许保持兴趣是最重要的,但是在你对编程有一定了解之后,你会发现自己还有很多困惑,这时候就需要恶补基础知识了,对底层了解的越清楚越有助于你消除困惑和对编程更深层的理解。