C语⾔各章节知识点总结
第⼀部分“C语⾔基础知识”知识点
1、C程序的基本结构
C程序是由函数构成的。每个程序由⼀个或多个函数组成,其中必须有且仅有⼀个主函数main( )。 main函数是⼀个可执⾏C语⾔程序的⼊⼝和正常出⼝,⽽不论其在整个程序中书写的位置如何。在C语⾔中,⼤⼩写字母是有区别的。(例如习惯使⽤⼩写字母定义变量,⽤⼤写字母定义常量)。 C程序的注释有两种⽅法,⼀种是⾏注释,使⽤“//”;另外⼀种是块注释,使⽤“/* */”,注意“/*”与“*/”不能嵌套使⽤。
C语⾔书写较为灵活,但是提倡采⽤缩进格式进⾏程序书写,以体现语句之间的层次感。
C程序每条语句以“分号”作为结束标志。以下⼏种情况不得使⽤分号:
oracle安装教程11g32位
(1)所定义的函数名称后不得使⽤分号;
(2) if…else…语句是⼀个整体,中间不能使⽤分号将其分隔开;
(3)预编译命令后不能使⽤分号。
2、C程序开发步骤
C语⾔在计算机上的开发过程主要由以下四个步骤组成:
第⼀步:编辑。⽣成后缀名为“.c”的源⽂件
第⼆步:编译。⽣成后缀名为“.obj”的⽬标⽂件
第三步:连接。⽣成后缀名为“.exe”的可执⾏⽂件
第四步:运⾏。
3、VC++6.0开发⼯具的使⽤
按下功能键Ctrl+F7编译程序;按下功能键F7连接程序;按下功能键Ctrl+F5运⾏程序;若程序在编译和连接过程中有语法错误,则按下功能键F4定位错误所在⾏并根据错误提⽰信息改正错误(原则是先解决error,再解决warning)。
4、C语⾔中标识符的命名规则
标识符由字母、数字、下划线组成;规定第⼀个字符必须为字母或下划线。
标识符定义的变量名、函数名、常量名等最好做到“见名知义”;⼤⼩写代表不同含义;不能使⽤关键字;最好不要与C语⾔的库函数同名。
5、C语⾔的数据类型
C语⾔的数据类型由基本类型和复杂类型构成。其中基本数据类型包括字符型(char)、整型(int,short,long)、实型(float,double);复杂数据类型包括指针类型、数组、结构体、联合体。
char型占1个字节、short型占2个字节、long型和float型占4个字节、double型占8个字节。
6、常量
(1)字符型常量(⽤单引号括起来的⼀个字符)
两种形式——普通字符、转义字符(掌握‘\n’、‘\0’、‘\t’、‘\\’、‘\’’、‘\”’、‘\ddd’、‘\xhh’)不论普通字符,还是转义字符,都等价于0-127之间的某个整数,即ASCII码表。
(2)整型常量
三种表⽰形式——⼗进制形式、⼋进制形式(加前导0)、⼗六进制形式(加前导0x)
注意:C语⾔的整型常量没有⼆进制表⽰形式。
(3)实型常量
两种表现形式——⼩数表⽰形式、指数表⽰形式(由“⼗进制⼩数”+“e或E”+“⼗进制
整数”组成,注意:e或E的两侧必须有数,其后必须为整数)
(4)字符串常量(⽤双引号括起来的零个或者若⼲多个字符)
编译系统会在字符串的最后添加‘\0’作为字符串的结束符。⽐较’a’和”a”的不同。
(5)符号常量:例如 #define PI 3.14159
7、变量
变量必须“先定义、后使⽤”。变量代表计算机内存中⼀定⼤⼩的存储空间,具体代表多少字节的存储空间⽰变量的类型⽽定,该存储空间中存放的数据就是变量的值。
注意:变量定义后如果未赋初值,则变量的初值是随机数。因此变量应该先赋值再使⽤才有意义。为变量赋值的⼏种⽅法:①初始化;②赋值语句;③调⽤标准输⼊函数从键盘为变量赋值。
(1)字符型变量
普通表格图片⽤“char”定义字符型变量,字符型变量存放1个字节的数值。对于⽆符号字符型变量,取值
范围是0~255,对于有符号字符型变量,取值范围是-128~+127。
(2)整型变量
⽤“int”、“short”、“long”定义整型变量,其中int型和long型占⽤4个字节的存储空间,short
型占⽤2个字节的存储空间。
(3)实型变量
⽤“float”、“double”定义实型变量,其中float型占⽤4个字节的存储空间,double型占⽤8
个字节的存储空间。
8、表达式
表达式具有⼴泛的含义,根据运算符不同,有赋值表达式、算术表达式、逻辑表达式、关系表达式等,甚⾄单独的⼀个常量或⼀个变量也是⼀个表达式。
9、运算符
(1)算术运算符(+、-、*、/、%)
除号(/)——当除数和被除数都为整数时,相除的结果⾃动取整。
求余号(%)——要求“%”号的两侧必须是整数,不能是实数。
(2)赋值运算符( = )
格式“变量 = 表达式”,表⽰将表达式的值赋值到变量对应的存储空间⾥。
注意:赋值号“=”的左侧必须是变量,不能是常量或者表达式。
(3)复合赋值运算符(+=、-=、*=、/=、%=)
由算术运算符和赋值运算符组成,是两个运算符功能的组合。例如:a += a + c;
★(4)⾃增、⾃减运算符(++、- -)表达式
当⾃增、⾃减运算符单独使⽤时放在变量前⾯或者后⾯没有区别。
例如:++i; 等价于 i++; 等价于 i=i+1;
⾃增、⾃减运算符与其它运算符共同存在于表达式中时,放在变量前和变量后有区别。
例如:若定义int i = 3, j; 则j = ++i; 语句执⾏后i的值为4,j的值为4。
则j = i++; 语句执⾏后i的值为4,j的值为3。
(5)关系运算符(>、<、>=、<=、==、!=)
注意:不能混淆赋值运算符(=)和关系运算符中的等于号(==)。前者是做赋值操作,后者是判断两个数是否相等。
关系表达式的值只有“逻辑真(⽤数值1表⽰)”和“逻辑假(⽤数值0表⽰)”两种情况。
如果表达式的值为实型,不能使⽤“==”或者“!=”判断两个值相等还是不相等。
(6)逻辑运算符(!、&&、||)
运算逻辑表达式时,当参与运算的数“⾮0表⽰真”、“0表⽰假”;表达式的解“1表⽰真”、“0表⽰假”。
注意:“短路特性”的含义。如果逻辑与“&&”运算符左侧表达式的值为0(假),则该运算符右侧的表达式被“短路”,即运算过程被计算机省略掉;如果逻辑或“||”运算符左
侧表达式的值为1(真),则该运算符右侧的表达式被“短路”。
(7)位运算符(~、^、&、|、<<、>>)
只适⽤于字符型和整数型变量。是C语⾔具有低级语⾔能⼒的体现。
注意:不能混淆逻辑与运算符“&&”和按位与运算符“&”;逻辑或运算符“||”和按位或运算符“|”;逻辑⾮运算符“!”和按位取反运算符“~”。
(8)逗号运算符(,)
功能为从左⾄右依次计算由逗号隔开的各表达式的值,最后⼀个表达式的值即为整个逗号表达式的值。是优先级最低的运算符。
(9)条件运算符(? :)
这是C语⾔中唯⼀的⼀个三⽬运算符,其形式为:<;表达式1> ? <;表达式2> :<;表达式3> (10)求字节运算符sizeof
注意:不能混淆求字节运算符sizeof和字符串长度库函数strlen( )。前者是运算符,后者是函数。sizeof(“Hello”)的值为6,⽽strlen(“Hello”)的返回值为5。
(11)各种运算符混合运算时的优先级排队⼝决
⾮、算、关、与、或、赋、逗
! * / % + - > >= < <= == != && || = ,
(12)数据类型的强制转换
格式:(转换类型名)表达式。
注意:类型名两侧的⼩括号不能省略,表达式⽰情况⽽定可以增加⼩括号。
第⼆部分“C程序的三种基本结构”知识点
1、语句
C语⾔的语句分为四类:①简单语句(分为表达式语句、函数调⽤语句);②空语句;③复合语句(由⼀对⼤括号括起来的⼀条或多条语句,复合语句在语法上视为⼀条语句);④控制语句(分为结
spring自动配置原理构化语句,如if语句、switch语句、while语句、do-while语句、for语句;⾮结构化语句,如break语句、continue 语句、return语句、goto语句)。
putchar函数2、程序的三种基本结构
顺序结构、选择结构、循环结构
3、顺序结构
1) printf()函数的使⽤
⼀般形式为:printf("格式控制字符串",输出项列表);
其中“格式控制字符串”包含三类字符——普通字符(即原模原样输出的字符,主要⽤于做
提⽰信息)、格式说明符(以“%”开头)、转义字符(以“/”开头)
输出项列表是可以省略的,当“格式控制字符串”中没有“格式说明符”时,输出项列表省
略;若是有“格式说明符”时,输出项列表不能省略,并且有⼏个格式说明符,输出项列表
就必须有⼏个对应数据类型的表达式,各表达式之间⽤逗号隔开。
需要掌握的格式说明符有:%c、%d、%f、%s、%u、%o、%x、%ld、%lf、%e、%%
2) scanf()函数的使⽤
⼀般形式为:scanf("格式控制字符串",地址列表);
其中“格式控制字符串”包含两类字符——普通字符(需从键盘原模原样输⼊的字符,⼀般
起分隔和提⽰作⽤)、格式说明符(以“%”开头)
地址列表通常是不省略的,根据“格式控制字符串”中包含多少个格式说明符,地址列表
中就有⼏个地址。对于普通变量,需在变量名前加上取地址符“&”,数组名前不需加“&”。
注意1:scanf()函数的“格式控制字符串”中不能包含“转义字符”,否则将引起输⼊⽆效。
如scanf (“%d\n”, &a);是错误的。
注意2:scanf()的格式控制字符串中的普通字符不是⽤来显⽰的, ⽽是输⼊时要求照普
通字符原模原样输⼊。
注意3:scanf()中参数的第⼆部分⼀定是地址列表,不能是表达式。
注意4:字符和数值混合输⼊且⼆者中间没有分隔符,需注意何时加空格。例如:已定义
char x; int y; scanf(“%c%d”, &x, &y); 此时从键盘输⼊时,字符和整数之间需加空格;
⽽ scanf(“%d%c”, &y, &x); 此时从键盘输⼊时,整数和字符之间不能加空格。(3) getchar()函数的使⽤
函数原型为:char getchar(void); 例如:char a; a=getchar( );
该函数使⽤时关注函数的返回值。
(4) putchar()函数的使⽤
函数原型为:char putchar(char); 例如:putchar(‘A’);
该函数使⽤时关注函数的参数。
(5) printf( )、scanf( )、getchar( )、putchar( )这四个函数都属于标准输⼊输出库函数,调⽤时需在程序中包含头⽂件stdio.h。
(6)例如已定义:char a, b=’A’;
则以下函数调⽤等价
4、选择结构
(1) if语句
if语句的三种形式——单分⽀选择结构、双分⽀选择结构、多分⽀选择结构。
单分⽀选择结构:if(表达式)
注意:if语句的表达式很多时候是关系表达式,不要将“==”号误⽤成“=”号。
说明1:表达式两侧的⼩括号不能省略,此表达式可以是C语⾔中任意合法的表达式,只要表达式的值为⾮零(真),就执⾏
其后的语句体;否则,结束if语句。
说明2:由于“if(表达式)”和“语句体”是⼀个整体,在语法上看作⼀条语句,因此在“(表达式)”后⾯不能加“;”,如果加了分号,则if 语句的语句体就成了空语句。说明3:“if(表达式)”会⾃动结合⼀条语句,如果语句体有多于⼀条语句时,必须使⽤复合语句,即⽤⼤括号将多条语句括起来。
语句体;
说明4:为了表⽰语句体从属于if ,书写时,应使语句体与关键字if 的位置有缩进。
双分⽀选择结构(⼆选⼀):
说明1:表达式只写在关键字if 的后⾯,不能写在else 的后⾯。
说明2:“if ”、“语句1”、“else ”、“语句2”是⼀个整体,在语法上看作⼀条语句,因此在
“(表达式)”后⾯不能加分号,在关键字else 后⾯也不能加分号。
说明3:如果“语句体1”、“语句体2”有多于⼀条语句,则必须使⽤复合语句。
说明4:书写时,应使关键字if 和else 对齐,“语句体1”和if 之间有缩进,“语句体2”
和else 之间有缩进。
多分⽀选择结构(多选⼀):
说明:表达式⼀定是跟在关键字“if ”的后⾯,不能跟在关键字“else ”的后⾯。
if(表达式) 语句体1;
else 语句体2; if(表达式1) 语句体1; else if(表达式2) 语句体2; … else if(表达式n) 语句体n;memcached启动参数
else 语句体n+1; (2) switch 语句 switch(表达式)
{ case 常量表达式1: 语句1; case 常量表达式2: 语句2; ……
case 常量表达式n: 语句n;
说明1:关键字switch 后⾯表达式的值必须是整型或者字符型,不能是实型。
说明2:关键字case 后⾯是“常量表达式”,只能是常量或常量表达式,不能是变量或者变量
表达式。且表达式的值必须是整型或者字符型,不能是实型和字符串。书写时注意
“case ”与“常量表达式”之间必须有空格;“常量表达式”后⾯是冒号。
说明3:每个case 分⽀后⾯的常量表达式必须互不相同。
说明4:每⼀个分⽀后⾯的“break ”可以省略,如果省略,则程序继续执⾏下⼀个case 分⽀
的语句,否则执⾏完该case 分⽀的语句就跳出switch 语句。
说明5:多个case 分⽀可以共⽤⼀组语句,当某个case 分⽀后⾯省略了语句,则意味着该分⽀
与它后⾯紧邻的分⽀共⽤语句。
说明6:default 可以省略。
说明7:书写时必须注意①switch 后⾯的表达式必须⽤⼩括号括起;②表达式的⼩括号后⾯不
23的二进制补码为能加分号;③case 和其后常量表达式之间必须加空格;④常量表达式以及default 后
⾯必须加冒号。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。