C语言入门(一)

C语言入门

计算机和编程语言

计算机语言

  • 程序是用特殊的编程语言写出来表达如何解决问体的
  • 不是用编程语言来和计算机交谈,而是描述它如何做事的过程和方法

程序的执行分为解释和编译两种
解释:借助⼀个程序,那个程序能试图理解你的程序,然后按照你的要求执⾏
通俗来讲,我们写了一个程序,程序写在一个文件中,然后交给一个可以读懂我写的程序的程序,但是它不产生任何东西,只是去做动作,这个程序呢就拿着我的程序一条一条运行,就完事了,下次在想运行呢还得需要这个可以解释我程序的程序来帮忙。
编译:借助⼀个程序,就像⼀个翻译,把你的程序翻译成计算机真正能懂的语⾔——机器语⾔——写的程序,然后,这个机器语⾔写的程序就能直接执⾏了
通俗来讲,我们写了一个程序,程序写在一个文件中,然后把这个文件交给了一个翻译官(程序),这个翻译官就把我的程序翻译成了计算机可以读懂的机器语言

解释语⾔vs编译语⾔

1、语⾔本⽆编译/解释之分
2、常⽤的执⾏⽅式⽽已
3、解释型语⾔有特殊的计算能⼒
4、编译型语⾔有确定的运算性能

C语言的发展

C语言

  • C语⾔是从B语⾔发展⽽来的,B语⾔是从BCPL发展⽽来的,BCPL是从 FORTRAN发展⽽来的
  • BCPL和B都⽀持指针间接⽅式,所以C也⽀持了
  • C语⾔还受到了PL/1的影响,还和PDP-11的机器语⾔有很⼤的关系
  • 1973年3⽉,第三版的Unix上出现了C语⾔的编译器
  • 1973年11⽉,第四版的Unix(System Four)发布了,这个版本是完全⽤C语⾔重新写的

C的发展与版本-标准

  • 1989年ANSI发布了⼀个标准——ANSI C
  • 1990年ISO接受了ANSI的标准——C89
  • C的标准在1995年和1999年两次更新——C95和C99
  • 所有的当代编译器都⽀持C99了

C语言用在那里

  • C语言的主要用在操作系统、嵌入式系统、驱动程序、底层驱动、图像引擎、图像处理、声音效果等方便,我们也称C语言是一种工业语言。

第一个程序

Hello world!

#include <stdio.h> //头文件
int main() //主函数
{
	printf("Hello world!\n"); //在双引号中间输入Hello World,\n是换行符
	return 0; //返回值
}
  • 主函数是C语言中唯一的入口,int是主函数的类型
  • ""里面的内容叫字符串,printf会把其中的内容原封不动的输出
  • \n表示需要在输出的结果后面换一行
  • return是函数的返回值,函数类型不同返回值也不同

程序框架

#include <stdio.h>
int main() 
{
	return 0; 
}

如何让程序输出算术结果

#include <stdio.h>
int main()
{
    printf("23+43=%d\n", 23+43);
    return 0;
}
  • %d说明后面有一个整数要输出在这个位置上
    四则运算
四则运算C符号含义
++
--
×*
÷/
%取余
()()括号
  • %表示取两个数相除以后的余数

编译器下载

C语言编程软件Dev C++:DEV C++
C语言编程软件VSCode:VS Code

FAQ

Q:计算机里的CPU可以直接运行人类编写的程序吗?为什么说编程语言不是和计算机交谈的语言?

不可以,因为人类编写的程序需要被编译成机器语言,计算机才能读懂,程序语言只能是告诉计算机去做什么,而不是交流的语言,交流的语言应该是在计算机上进行的操作。

Q:有的编程语言,源代码经过编译后形成目标代码,但是这样的目标代码不能直接在CPU上执行,而是需要由一个仿真器程序来解释执行。这样的执行方式是编译的还是解释的?

解释

Q:常听到有人说他学的是Visual C,有人学的是Turbo C,不是我们学的什么Dev C,是他们的比我们的高级吗?还有GCC到底是什么?

都是一个编程语言的编译器只是平台不同,GCC 原本作为 GNU 操作系统的官方编译器,现已被大多数类 Unix 操作系统(如Linux、BSD、Mac OS X等)采纳为标准的编译器,GCC 同样适用于微软的Windows。GCC 是自由软件过程发展中的著名例子,由自由软件基金会以 GPL 协议发布。

内容来自中国大学MOOC,个人学习笔记总结。整理不易,欢迎支持,下期见!

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

晶小生

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值