C语言语法中常用的一些部分的提要

本文概述了C语言中的关键元素,如标识符的规则、常量类型(整型、字符、浮点和字符串)、表达式的种类(算术、逻辑、字位和类型转换),以及数据定义、函数定义、变量初始化和不同类型的语句。还介绍了预处理指令在C编程中的应用。
摘要由CSDN通过智能技术生成

C语言语法中常用的一些部分的提要

1.标识符

标识符可由字母、数字和下画线组成。标识符必须以字母或下画线开头,大、小写的字母分别认为是两个不同的字符。不同的系统对标识符的字符数有不同的规定,一般允许 7个字符。

2.常量

可以使用:

)整型常量

十进制常数。

八进制常数以0开头的数字序列)

。十六进制常数(以0x开头的数字序列)

。长整型常数(在数字后加字符L或1)。

(2)字符常量

用单引号引起来的一个字符,可以使用转义字符。

(3)实型常量(浮点型常量)

。小数形式。

。指数形式。

(4)字符串常量

用双引号引起来的字符序列。

3.表达式

(1)算术表达式

整型表达式:参加运算的运算量是整型量,运算过程中先转换成 double型,结果为double 型。

。整型表达式:参加运算的运算量是整型量,结果也是整型数。

(2)逻辑表达式

用逻辑运算符连接的整型量,结果为一个整数(0或1)。逻辑表达式可以认为是整型表达式的一种特殊形式。

(3)字位表达式

用位运算符连接的整型量,结果为整数。字位表达式也可以认为是整型表达式的一种特殊形式。

(4)强制类型转换表达式

用“(类型)”运算符使表达式的类型进行强制转换,如(float)a。

(5)逗号表达式(顺序表达式)

其形式为

表达式1,表达式2,…,表达式n

顺序求出表达式1,表达式 2,.,表达式的值,结果为表达式n的值

(6)赋值表达式

将赋值号“=”右侧表达式的值赋给赋值号左边的变量。赋值表达式的值为执行赋值后被赋值的变量的值。

(7)条件表达式

其形式为

逻辑表达式  ?表达式1: 表达式2

逻辑表达式的值若不为零,则条件表达式的值等于表达式1的值;若逻辑表达式的值为零,则条件表达式的值等于表达式2的值。

(8)指针表达式

对指针类型的数据进行运算,例如p-2、p1-p2 等(其中 p、pl、p2 均已定义为指向数组的指针变量,p1与 p2 指向同一数组中的元素),结果为指针类型。

以上各种表达式可以包含有关的运算符,也可以是不包含任何运算符的初等量(例如,常数是算术表达式的最简单的形式)。

4.数据定义

对程序中用到的所有变量都需要进行定义。对数据要定义其数据类型需要时要指定其存储类别。

(1)类型标识符可用

1.int   整形                       2.short   短整型

3.long   长整型                    4.unsigned   无符号常熟

5.char   字符型                    6.float   单精度浮点型

7.double   双精度浮点型            8.struct  结构体名

9.union  共用体名                  10.enum  枚举类型名

11.用typedef定义的类型名

结构体与共用体的定义形式为

struct     结构体名

{成员表列};

union     共用体名

(成员表列);

用typedef定义新类型名的形式为

typedef     已有类型    新定义类型

例如:

typedef  int  COUNT:

(2)存储类别可用

auto

static

register

extern

(如不指定存储类别,作auto处理)变量的定义形式为

存储类别、数据类型、变量表列;

例如:static float a, b, c;

注意外部数据定义只能用extern 或 static,而不能用auto或 register。

5.函数定义

其形式为

存储类别、数据类型、函数名 (形参表列)

函数体

函数的存储类别只能用 extern 或 static。函数体是用花括号括起来的,可包括数据定义和语句。函数的定义举例如下:

static int max (int x, int y)

{

int z;

z-x>y? x: y;

return (z);

}

6.变量的初始化

可以在定义时对变量或数组指定初始值

静态变量或外部变量如未初始化,系统自动使其初值为零(对数值型变量)或空(对字符型数据)。对自动变量或寄存器变量,若未初始化,则其初值为一不可预测的数据。

7.语句

(1)表达式语句;

(2)函数调用语句;

(3)控制语句;

(4)复合语句;

(5) 空语句。

其中控制语句包括

(1)if(表达式)  语句

if(表达式)   语句1

else语句2

(2)while(表达式)语句

(3)do 语句

while(表达式);

(4)for(表达式1;表达式2;表达式3)

语句

(5)switch(表达式)

case 常量表达式1  语句1;

case 常量表达式2  语句2;

case 常量表达式n  语句n;

default;  语句n十1;

前缀case和default本身并不改变控制流程,它们只起标号作用,在执行上一个case所标志的语句后,继续顺序执行下一个 case 前缀所标志的语句,除非上一个语句中最后用break语句使控制转出switch结构。

(6)break语句

(7)continue语句

(8)return语句

(9)goto语句

8.预处理指令

#define宏名字符串

#define宏名(参数1,参数2,,参数n)字符串

#undef宏名

# include“文件名” (或<文件名>)

#if常量表达式

#ifdef 宏名

其顺。计银博

#ifndef 宏名

#else

# endif

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值