您的位置:首页 > 编程语言 > C语言/C++

02:C语言概述、vi编辑器、编写第一个C程序、变量的基本使用

2016-09-23 21:53 399 查看
l   C语言概述

C语言程序的绝大部分文件应以 .c为扩展名,这种文件叫做C语言源文件。

C语言程序中还包括以 .h作为扩展名的文件,这种文件叫做C语言头文件。

C语言程序中可以直接使用数字和加减乘除符号(+ - * /)。

C语言程序中每个计算步骤最后都必须以 ; 结尾,以此结尾的计算步骤叫做一个语句。

C语言程序中绝大多数语句都需要写在 { } 大括号里面,函数内部的语言一定按照从上到下的顺序执行。

C语言程序中不可能没有函数,每个函数都必须有名字,不同函数名字不能相同。

C语言程序中必须包含叫做main的主函数。

C语言程序一定从主函数的第一条语句开始执行。

C语言程序的函数在结束时可以留下一个数字,叫做函数的返回值。

主函数应该有一个返回值,如果是0,表示程序员希望计算机认为程序正常结束;如果是别的数字,则表示程序员希望计算机认为它出错了。

       return 0;

C语言程序中预先保留几十个英文单词,他们叫做关键字。每个关键字都有特定的用途,不能随意使用。这些关键字均是由小写字母组成。

return就是一个关键字,用途有二:

       1.主要是用来结束函数的运行;

       2.指定函数返回值的数值。

计算机根据数字在某个方面的区别,把数字分成几组,每组叫做一个数据类型。

每个数据类型都有自己的名字。

整数类型:

int  (包含几乎所有不带小数点的数字)

程序中所有的数字必须有数据类型。程序中不带小数点的数字,都被默认为是整数。

C语言程序中规定函数如果有返回值,则必须把返回值的类型名称写在函数名称前。

C语言程序中通常包含预处理命令。(一定以 # 为开头,不是以 ; 结尾。)

标准C的阶段,预处理指令会把源文件里的内容替换或其他的内容。

       #include预处理指令:

              ①可以把一个头文件的内容包含到当前文件中;

              ②相对路径表示被包含的头文件的位置。

A.    把相对路径包含在<>里面,表示依次采用系统中预先准备好的一组目录作为起点;

B.    把相对路径包含在””里面,表示把当前文件所在目录首先作为起点使用,然后把系统中预先准备好的目录作为起点。

C语言程序中可以加入文字性的说明信息,这些信息必须加入到注释区域里。计算机会直接忽略注释里的所有内容。

       //单行注释,一直到行尾

       /*  */ 多行注释,/*开头,*/结尾

C语言程序中大量使用名字区分不同的内容,这些名字叫做标识符。标识符最好采用英文单词。

       标识符编写规则:

1.    第一个是英文字母或者下划线_;

2.    后面每个字符可以是英文字母、下划线、数字;

3.    大小写不同,标识符不同(大小写敏感);

4.    关键字不可以作为标识符;

5.    标识符没有长度限制,计算机只接取前面一部分。

C语言程序编码规范:

1.    一行里最多包含1条语句;

2.    同级别语句上下对齐(缩进相等);

3.    在合适的地方使用空格和空行;

4.    编写标识符:驼峰方式或者下划线方式;如xian,驼峰XiAn,下划线xi_an

l   编译器

编译器,可以把计算机源文件翻译成计算机能认识的格式。

gcc是linux系统里C语言程序的编译器。MinGW是Windows下的gcc。

Linux系统中C语言开发的基本过程:

1.    使用vi编写源文件;

2.    使用gcc把所有源文件翻译成可执行的文件;

3.    使用./a.out 执行得到的新文件。(gcc重命名时以命名为执行文件)

gcc编译器的工作过程:

1.    处理所有预处理指令;

2.    把第一部处理结果翻译成计算机认识的格式;——编译

3.    把第二部的处理结果合并成执行文件。——链接

gcc选项介绍:

       -E  只处理所有预处理指令

       -c  只完成预处理和编译工作(.o为扩展名的目标文件)

       -o  用来指定得到的执行文件的名称(常用)

       -std=c89或 –std=c99  这个选项决定采用什么版本规范进行编译,默认采用c89。

C语言程序中提供一组工具,叫标准函数。每个标准函数解决一个常见的问题,不同标准函数的名称不同。

       printf     标准函数:

              可以把程序中的数字打印在终端窗口里。(可以加占位符,没有自动换行功能)

       puts        标准函数:

              可以把程序中的数字打印在终端窗口里。(不能加占位符,具有自动换行功能)

       stdio.h的头文件(C语言官方已经提供,std标准,io输入输出)

       printf 高级用法:

              可以在双引号里面使用占位符,把数字转移到双引号里面。(一一对应,多个时候逗号隔开)

       整数类型占位符:%d

       *双引号后面可以是计算公式,用结果替换占位符。

l   变量

程序中所使用的所有数字必须记录在内存里。

计算机的内容由大量字节构成,每个字节可以单独记录一个数字。

每个字节有一个编号,不同字节编号不同。编号:字节的地址。

*所有字节的地址从0开始向上递增。

内存中几个相邻的字节可以合并成一个整体,用来记录一个数字。

>>把一个数字记路的所有字节成为一个存储区;

>>一个存储区只能用来记录一种类型的数字;

>>存储区也有地址,为内部包含的地址最小的字节地址。

C语言程序中可以使用“变量”代表存储区。

变量声明语句会让计算机会程序分配一个存储区。

       变量的两种使用方法:

1.    向变量代表的存储区里放一个数字。

2.    从变量代表的存储区里获得数字。

赋值语句可以向变量里放一个数字,= 为赋值操作符。

赋值操作符左边是代表存储区的内容(自己明明写出来的),叫做左值。

       变量是最简单的左值。

赋值操作符右边是写一个代表数字的内容。

       赋值语句可以把右边的数字放在左边的存储区里。

可以在声明变量的时候对变量进行赋值,这叫做变量的初始化。C语言里的所有变量都应该初始化。

变量名称既可代表变量的存储区,也可以代表那个存储区里的数字,由环境决定。

在变量名称前加一个&符号,可以计算变量对应存储区的地址。(指针)

%p作为占位符,可以把地址打印在屏幕上。

可以在一条语句中同时声明多个同类型的变量。

变量可以用来代表一组数字,任何时候只使用其中一个。

字符类型是一种数据类型,它的名称是

       char

字符类型包含了256个不同的整数,每个整数代表一个字符数据,用单引号表示‘a’。

整数和字符仅仅是两种不同的表达方式。

ASCII码表中列出所有整数与字符之间的关系,如

       ‘a’→ 97

       ‘A’→ 65

       ‘0’→ 48

ASCII码表中的小写字母都是连续排列。

       ‘a’的整数最小,‘z’的整数最大。

所有大写字母和阿拉伯数字字符也都符合这个规律。

       ‘A’的整数最小,‘Z’的整数最大;‘0’的整数最小,‘9’的整数最大。

整数:

       ‘d’~‘a’等于‘D’~‘A’

       ‘d’~‘a’等于‘3’~‘0’等于3 ~ 0

所有字符被分成2组,每组包含128个。

其中一组字符数据两种表示方式之间的对应关系在计算机上都一样,他们的整数范围从0到127。

另外一组不同计算机上不一样,可能是-128到-1,可能是128到255。

无符号字符类型:

       unsigned char

同样包含256个字符数据,所有计算机上都一样,从0~255。

\n  换行

\r  回车(同一行内从头开始打印,覆盖原行内容)

\\  代表字符 \

\’ 代表字符‘

\” 代表字符 ”

短整数数据类型:

       short

包含65536个不同的整数,一半是非负数,一半是负数,以数字0位中心,向两边扩展。

无符号短整数类型:

       unsignedshort

       也包含65536个不同的整数,从0开始向整数递增,不包含负数。

长整数类型:

       long  或  long int

       它里面包含2的32次方个不同的整数,其中一半是非负数,一半是负数,从0位中心向两边扩展。

无符号长整数类型:

       unsignedlong  或  unsignedlong int

       它里面包含2的32次方个不同的整数,从开始向整数方向扩展,不包含负数。

我们计算机上无符号整数类型和无符号长整数类型是一样的。

在程序中不带小数点的数字后面加u表示这个数字是无符号整数类型。

C语言中将带小数点的数字叫做浮点类型,分为:

单精度浮点类型:

       float

双精度浮点类型:

       double  (双精度浮点类型可以记录更多的小数点后面的数位)

C语言程序中带小数点的数字,计算机默认为double型,在带小数点后面加f表示类型为单精度类型。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  标准C语言