01-C语言入门需要知道的知识(入门篇)

1. C语言的前世今生

目标:大概了解C语言诞生过程,C语言的发展历史以及为什么还要学习C语言

  • C语言诞生最初是由贝尔实验室的丹尼斯·里奇玩一款名为"环游太空"的游戏,但这款游戏的要求的配置较高,当时仅在一台硬件机器上无法实现,于是他开始使用B语言为基础,做了改进开发了UNIX操作系统,而且得到了很好的实现。发明了C语言。
  • 注:UNIX 操作系统,C编译器,和几乎所有的 UNIX 应用程序都是用 C 语言编写的.
  • C 语言标准是于 1988 年由美国国家标准协会(ANSI,全称 American National Standard Institute)制定的。称之为ANSI C,有时也被称为 C89 或 C90。现在 最新的标准是C11.
  • 目前,C 语言是最广泛使用的系统程序设计语言。大多数先进的软件都是使用 C 语言实现的。
  • 当今最流行的 Linux 操作系统和 RDBMS(Relational Database Management System:关系数据库管理系统) MySQL 都是使用 C 语言编写的。
  • C语言的特点:
    • C语言功能丰富,开发面广,使用灵活方便。
    • 目标程序效率高、可移植性好,是介于汇编语言和其他高级语言之间的一门承上启下的语言。
    • 尽量的面向底层硬件的设计,内存分配,既适合于编写系统软件,又能方便地用来编写应用软件。
  • 怎么学习C语言程序设计?理论与实践相结合,注重分析问题的能力,构造算法的能力,编程的能力。

2. 第一个C语言程序

目标:理解C语言程序的基本结构
创建一个helloworld.c源文件

#include<stdio.h>

int main()
{
	/*打印:Hello world!*/
	printf("Hello World!\n");

	return 0;
}

命令解析:

include< stdio.h >是预编译命令,以"#"开头,include是包含、代入的意思,类似于Java和python中的import,C#中的using引入命名空间.

  1. "<>“表示系统自带或内置的库,也可以写成 " " 表示用户自定义的库,如果写成” "并且自定义的库里面没有这个库文件,系统会自动查找自带的库,如果还没找到就会报错。
  2. stdio 是系统的标准输入和输出库,即standard input/output,也可以根据需要选择其他的库文件。
  3. .h 表示头文件,因为这些文件都是放在程序各文件的开头。
  • int main() 表示函数的头部,其中的int是整数数据类型,表示函数的返回值。main函数是主函数的函数名,main()是所有函数的入口,程序从main()函数开始执行。
    函数定义的语法形式:
[返回值类型] 函数名([形参列表])
{
	函数体;
	[返回值];
}
  • 一对花括号{}内部是函数体,其中"/**/"是注释,可以跨行写,printf()是导入标准库中的库函数,用于向标准终端(显示器)输出指定的内容,可以格式化输出(print format),默认的参数是字符串类型;
  • return 0;是main()的返回值,与int类型对应。函数执行到右花括号}执行结束。
  • C 语言的关键字严格区分大小写,每条语句以";"结束。
	#include <stdio.h> 
	
	int main(int argc, char *argv[])
	{ 
	    /* 我的第一个 C 程序 */ 
	    printf("可执行程序 %s ,参数个数为[%d], 运行输出:[%s]\n",argv[0],argc,argv[1]); 
	    return 0;
	}

main(int argc, char *argv[]) 函数传参,argc 为参数个数,argv 是字符串数组,下标从 0 开始,第一个存放的是可执行程序的文件名字,然后依次存放传入的参数.

  1. 标准输入输出中,"%s"是字符串的占位符,"%d"是整型数值的占位符,后续将会系统介绍,printf函数的格式化输出。
  2. "\n"是转义字符,属于不可见字符,char类型,表示回车或换行。

3. C程序的执行过程

目标:深入理解C程序在系统中执行的过程,以及生产的文件。
运行一个C语言程序,有以下几个步骤:

  1. 编写C语言源程序,一般C源程序的后缀名为.c,在使用IDE开发中,常见的C语言开发环境有VC++、DEV c++、codeblocks等.
  2. C编译器对.c文件进行预处理、编译,具体的作用是检查C语言的语法是否出错,得到二进制目标文件.obj。
  3. 此时的二进制文件还不能供计算机直接运行,必须把所有编译后得到的模块连接起来,装配成一个完整的程序,并加入函数库,生成可执行程序.exe文件。
  4. 机器硬件执行生成的可执行文件,输出结果。
C编译

注:编译,编译程序读取源程序(字符流),对之进行词法和语法的分析,将高级语言指令转换为功能等效的汇编代码,再由汇编程序转换为机器语言,并且按照操作系统对可执行文件格式的要求链接生成可执行程序。
**C源程序头文件-->预编译处理(cpp)-->编译程序本身-->优化程序-->汇编程序-->链接程序–>可执行文件 **

发布了18 篇原创文章 · 获赞 0 · 访问量 453
App 阅读领勋章
微信扫码 下载APP
阅读全文

没有更多推荐了,返回首页

©️2019 CSDN 皮肤主题: 大白 设计师: CSDN官方博客

分享到微信朋友圈

×

扫一扫,手机浏览