鱼C论坛

 找回密码
 立即注册
查看: 1650|回复: 0

[技术交流] C语言教程1002 :第一个程序

[复制链接]
发表于 2019-11-3 16:21:09 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
第一个程序
      上节课我们介绍了我们这个教程该讲些什么,我们这节课就讲讲 C 语言的第一个程序。
      再讲第一个程序之前,我想应该先普及一些相关概念。
      1 . C 语言淘汰了吗?
                  没有。对于其他语言来讲, C 语言确实是一个老古董了,但他是也老越值钱。
           
                                   

                               
登录/注册后可看大图

                   从最新的 TIOBE 世界编程语言排行榜,我们可以看到虽然这么多年过去了,但 C 语言一直都是在第一名
           和第二名之间徘徊,并且目前仍然保持着上升的趋势。

      2 . 莫斯密码
                  莫斯密码的原理非常简单, 就是查表,这就是一张莫斯密码表:
                  

                               
登录/注册后可看大图

                  将明文对着编码表翻译为“点横”组合的过程,我们称之为编码,反过来,将“点横”组合解密回原文的过程,
叫做解码。

      3. 机器语言

                  通过查找指令表,CPU 能将 0 和 1 的组合跟具体的指令挂钩,那么这些 0 和 1 的组合我们称之为机器码,也叫机器语言,属于第
            一代编程语言,也是 CPU 唯一可以直接读得懂的语言。



      4. 汇编语言
                  在汇编语言中,引入了大量的助记符来帮助人们编程,然后由汇编编译器将这些助记符转换为机器码,这个转化的过程我们称之为编译。




      5. C 语言

                  C 语言属于第三代编程语言,第三代编程语言我们称之为高级语言。正如你所听说的 C++、C#、JAVA、Delphi、Python、Object-C、

            Swift 这些都属于第三代编程语言。

                  事实上呢,你用 C 语言进行编程,编译器会将你的 C 语言代码编译成汇编语言,再由汇编语言的编译器编译为机器语言,通常我们看

到的可执行文件事实上就是机器语言的形式,进而让 CPU 理解和执行。

                        

                               
登录/注册后可看大图



      6. C 语言的优势



                               
登录/注册后可看大图


                  - 效率高


                              我们说 C 语言效率高是针对其他第三代编程语言来讲的,C 语言是编译型语言,源代码最终编译成机器语言,也就是我们所说

                        的可执行文件,从此 CPU 就可以直接执行。

                                    

                               
登录/注册后可看大图


                              除了编译型语言,时下很流行的还有解释型语言,像 JAVA,Python,Ruby 这类都是解释型语言。解释型语言不直接编译成

                        机器码,而是将源码转换成中间代码,然后发送给解释器,由解释器逐句翻译给 CPU 来执行。这样做的一个好处就是可以实现跨
                        平台的特性,而缺点就是效率相对要低一些,因为每执行一次都要翻译一次。

                                

                               
登录/注册后可看大图


                        打个吃货比较容易懂的比喻,编译型语言就是做好一桌子菜再开吃;而解释型语言就是打火锅,想吃什么,就下什么料。很明显,

                  打火锅总是比较费时间的。

                  - 灵活度高


                              C 语言不仅提供多种运算符,还可以完成类似于计算机底层操作的位运算;语法简单,约束少;丰富多变的结构和数据类型;

                       还拥有可以直接操作计算机硬件力。这一点大家在学习到指针这一章节的时候将深有体会。指针可以说是 C 语言的灵魂,C 语
                       言有多灵活和强大,完全取决于你对指针这一知识点的掌握程度。所以不同的人在学 C 语言,有些成了大神,有些仍然还是初学者。

                  - 可移植性高

                          可移植性高是指源代码在不需要做改动或只需稍加修改,就能够在其他机器上编译后正确运行。

                          统计资料表明,对于单片机来说,不同机器上的 C 语言编译程序 80% 的代码是公共的,因此使用 C 语言的编译程序更便于移植。

                   另外,无论是 Windows 系统、Linux 系统还是苹果的 MacOS 系统,抛开现象看本质,它们都与 C 语言有不可分割的联系。                          


      接着我们开始讲第一个程序,首先,你得搭建 C 语言的环境 (*) ,搭建好后,打开,新建一个文件写入以下代码:

     
  1. #include <stdio.h>
复制代码
     然后保存为后缀为 “ .c ”,编译并运行。



                               
登录/注册后可看大图

* Windows 下载地址: https://fishc.com.cn/forum.php?mod=viewthread&tid=66281&extra=page%3D1%26filter%3Dtypeid%26typeid%3D571
   Max OS 下载地址:       https://fishc.com.cn/forum.php?mod=viewthread&tid=66280&extra=page%3D1%26filter%3Dtypeid%26typeid%3D571
   Linux 下载地址:          https://fishc.com.cn/forum.php?mod=viewthread&tid=65015&extra=page%3D1%26filter%3Dtypeid%26typeid%3D571
                                     https://fishc.com.cn/forum.php?mod=viewthread&tid=65017&extra=page%3D1%26filter%3Dtypeid%26typeid%3D571
                                     https://fishc.com.cn/forum.php?mod=viewthread&tid=65021&extra=page%3D1%26filter%3Dtypeid%26typeid%3D571
                                     https://fishc.com.cn/forum.php?mod=viewthread&tid=65022&extra=page%3D1%26filter%3Dtypeid%26typeid%3D571
                                     https://fishc.com.cn/forum.php?mod=viewthread&tid=65095&extra=page%3D1%26filter%3Dtypeid%26typeid%3D571
                                     https://fishc.com.cn/forum.php?mod=viewthread&tid=65096&extra=page%3D1%26filter%3Dtypeid%26typeid%3D571
                                     https://fishc.com.cn/forum.php?mod=viewthread&tid=65158&extra=page%3D1%26filter%3Dtypeid%26typeid%3D571
                                     https://fishc.com.cn/forum.php?mod=viewthread&tid=65335&extra=page%3D1%26filter%3Dtypeid%26typeid%3D571
   课后作业:                  https://fishc.com.cn/forum.php?mod=viewthread&tid=66283&extra=page%3D1%26filter%3Dtypeid%26typeid%3D570
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-4-28 18:57

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表