C语言高速入门系列(二)
-----转载请注明出处coder-pig
本节引言:
在前面一节中我们对C语言进行了初步的了解,学会了使用IDE进行代码的编写,编译执行!
在这一节中我们会对C语言的基本的语法进行进一步的学习!
C语言是一门语言,能够和英语进行类比,英语句子 = 单词 + 语法
相同C语言的代码语句,也有着一套自己的规则!
废话不多说,直接正文!
本节学习路线图:
正文:
1.基本字符集
1.1 标识符
①何为标识符:在C语言中,符号常量,变量,数组,函数等都须要一定的名称,我们把这样的名称成为标识符
②标识符划分:keyword,提前定义标识符和用户标识符。
③标识符的命名规则
答:仅仅可以由字母,数字,下划线,或者美元符号($)组成,且不能以数字开头;
C语言区分大写和小写,通常变量名和函数名都用小写字母表示;
尽管没有规定名称的长度,但还是别写太长,最好是见名知义,比方,int max一看就知道是用来存放最大值的!
还有,不能和以下的32个C语言的keyword重名哦!
以及C语言中系统先定义的标识符,如系统类库名,系统常量名
系统函数名,如(格式输出函数:printf());重名!
1.2 keyword(保留字)
①何为keyword:C语言中具有特殊含义的英文单词~通经常使用于构成语句,存储数据,定义数据类型等
②C语言的32个keyword參照图,不用记!等用到了再去了解!
1.3 分隔符
①空白符:在程序中增加适当空白,能够使代码缩进,使得程序更加清晰易读.
②普通分隔符: 分号(:) : 语句结尾; 大括号({ }) :函数体,复合语句,以及数组的初始化等
圆括号(()):函数定义时,将參数括起来,或者改变运算的优先顺序; eg: (a + 1) *2 和 a + (1 * 2)
方括号([]):定义数组类型和应用元素 eg: int a[10]; b = a[3];
点号(.):结构体仲引用成员 逗号:參数分隔 eg:int a,b,c;
③凝视符: // 单行凝视, /**/多行凝视 使用方法可见第一节的hello world程序!
2.数据类型
2.1 基本数据类型
ps:这里不给出数据类型的取值范围以及精度域宽等,由于在不同的计算机字长和系统环境下
占用的内存空间是不一样的,能够通过sizeof获得相应数据类型在该系统环境下所占的字节;
从而算出相应数据类型的取值范围!
①整型:用于准确地表示整数,依据表示范围的不同分为下面三种:
短整型(short) < 整型(int) < 长整型(long)
②实型(浮点型):用于标识实数(小数)依据范围和精度不同分为下面两种:
单精度浮点数(float) < 双精度浮点数(double)
注意:float仅仅可以保证7位数字是有效的!!!
③字符型:用来描写叙述单个字符,char
除了上面三种以外,还能够使用long short signed unsigned来修饰不同的数据类型:(char仅仅能用后面两个)
有符号与无符号的差别是:最高位是否为符号位,即最高位是否用于表示数的整负;
我们能够加入unsigned来保证此数据为正数,同一时候相应的数据范围由0到原来的最大值 * 2
2.2 其它数据类型:
数组,指针,结构体,共用体,枚举,指针类型,文件类型,空类型(void)
这些后面会学到的,不讲。
3.常量与变量:
3.1 普通常量
整型常量:
实型常量:
字符常量
字符串常量和符号常量
3.2 变量
1. 什么是变量?
答:程序执行过程中,他的值能够改变的数据,代表着一个存储空间,须要用变量名来找到这个数据
就像:你去超市,放东西到储物柜的一格,他会给你一张纸条,你依据这个纸条才干够拿回自己的东西
储物柜的一格就是变量的内存空间,字条就是变量名,你拿和放就是改动变量名相应内存中的数据
2.变量的使用:
一个简单的 int a = 123;事实上暗地里运行了下面操作
①int a:在内存中开辟了四个字节的内存空间,而且为这个空间起了个名字,叫做a;
②后面的=123,这一步完毕的是变量的初始化,就是通过a这个变量名,往4个字节的内存中放入123这个数据
小提示;①一个好的建议是,当我们定义一个变量时,对其进行初始化,能够有效的避免空指针问题的出现
②你能够通过&a获得存放123这个数据的内存地址的值!
4.运算符与表达式
C语言强大的地方之中的一个就是他拥有丰富的运算符
4.1 算术运算符
4.2 关系运算符
4.3逻辑运算符
4.4 赋值运算符
4.5 条件表达式
4.6 逗号表达式:
4.7 长度測试运算符
sizeof:通经常使用来測试某个数据类型所占的内存空间大小
使用演示样例代码:
#include <stdio.h> int main() { int a = 1; float b = 1.1; char c = 'c'; printf("%d,%d,%d ",sizeof(a),sizeof(b),sizeof(c)); return 0; }
该代码測试的是int,float,char类型在本机所占的字节数
4.8 运算符的优先级
口诀: 括号最大 > 。 > 算数运算符 >关系运算符>逻辑与或>赋值运算符
不要去记表,用到的时候再查,查多了就熟了!
C语言运算符优先级表:(具体)
http://blog.csdn.net/coder_pig/article/details/37650817
5. 数据类型的转换
小节:
①标识符的命名规则
②了解下C的32个keyword,分隔符的使用
③3个基本数据类型:整型,浮点型,字符型
④普通常量,字符串常量和符号常量
⑤变量的使用
⑥算术运算符,关系运算符,逻辑运算符,赋值运算符,条件运算符,逗号运算符,长度測试运算符的使用!
⑦了解下运算符的优先级
⑧C语言数据类型转换的强制转换(显式)和自己主动转换(隐式)
更新日志:
2014/7/25 加入了:标识符的划分:keyword,提前定义标识符与自己定义标识符
该改动由网友:Robot__Man提出,很感谢!