接上一篇:C语言简述、特点、常用编译器,VS2010/VS2019写第一个C语言程序
今天来分享C语言中的32个关键字和C语言中的标识符的一些规则,开始上菜:
此博主在CSDN发布的文章目录:我的CSDN目录,作为博主在CSDN上发布的文章类型导读
目录
- 1.关键字
- 1.1.auto
- 1.2.break
- 1.3.case
- 1.4.char
- 1.5.const
- 1.6.continue
- 1.7.default
- 1.8.do
- 1.9.double
- 1.10.else
- 1.11.enum
- 1.12.extern
- 1.13.float
- 1.14.for
- 1.15.goto
- 1.16.if
- 1.17.int
- 1.18.long
- 1.19.register
- 1.20.return
- 1.21.short
- 1.22.signed
- 1.23.sizeof
- 1.24.static
- 1.25.struct 结构体
- 1.26.switch
- 1.27.typedef
- 1.28.union共用体
- 1.29.unsigned
- 1.30.volatile
- 1.31.void
- 1.32.while
- 2.标识符
1.关键字
1.1.auto
关键字auto是用来声明完全可选择的局部变量的
--------------------------------------------------------------------------------
1.2.break
关键字break是用来跳出一个do, for, or while 的循环,它也可以结束一个 switch 语句的子句,让程序忽略下面的case代码。
举个例子:
while( x < 100 ) {
if( x < 0 )
break;
cout << x << endl;
x++;
}
break语句只能跳出本层循环,假如你要跳出一个三重嵌套的循环,你就要使用包含其它的逻辑或者用一个goto语句跳出这个嵌套循环。
--------------------------------------------------------------------------------
1.3.case
关键字case在switch里面用来检测匹配。
--------------------------------------------------------------------------------
1.4.char
关键字char用来声明一个字符型变量。
--------------------------------------------------------------------------------
1.5.const
关键字const用来告诉编译器一个一旦被初始化过的变量就不能再修改。
--------------------------------------------------------------------------------
1.6.continue
continue语句用来结束本次循环。
例如,下面这段代码会显示所有除了10之外0-20的所有数字:
for( int i = 0; i < 21; i++ )
{
if( i == 10 )
{
continue;
}
cout << i << " ";
}
--------------------------------------------------------------------------------
1.7.default
switch 语句中的缺省条件。
--------------------------------------------------------------------------------
1.8.do
一般和while构成do…while循环。
语法:
do {
/*code*/
} while( /*condition */);
do构建一个循环语句表,直到条件为假.
注意循环中的语句至少被执行一次,因为判断条件在循环的最后.
--------------------------------------------------------------------------------
1.9.double
关键字double用来声明浮点型变量的精度。
-------------------------------------------------------------------------------
1.10.else
关键字else用在 if 语句中的二中选一。
--------------------------------------------------------------------------------
1.11.enum
语法:
enum name {name-list} var-list;
关键字enum用来创建一个包含多个枚举元素的名称表。
var-list 是可选的,例如:
enum color {red, orange, yellow, green, blue, indigo, violet};
color c1 = indigo;
if( c1 == indigo ) {
cout << “c1 is indigo” << endl;
}
-------------------------------------------------------------------------------
1.12.extern
关键字extern用来告知编译器变量在当前范围之外声明过了。
被extern语句描述过的变量将分派不到任何空间,因为他们在别的地方被定义过了。
extern语句频繁的用于在多个文件之间的跨范围数据传递。
--------------------------------------------------------------------------------
1.13.float
关键字float用来声明浮点型变量。
--------------------------------------------------------------------------------
1.14.for
语法:
for( initialization; test-condition; increment )
{
statement-list;
}
for构造一个由4部分组成的循环:
initialization初始化, 可以由0个或更多的由逗号分开的初始化语句构成;
test-condition判断条件,如果满足该语句循环继续执行;
increment 增量, 可以由0个或更多的由逗号分开的增量语句构成;
statement-list语句列表,由0个或更多的语句构成,当循环条件成立时他们被执行。
例如:
for( int i = 0; i < 10; i++ )
{
cout << "i is " << i << endl;
}
int j, k;
for( j = 0, k = 10;
j < k;
j++, k-- )
{
cout << "j is " << j << " and k is " << k << endl;
}
for( ; ; ) {
  // loop forever!
}
--------------------------------------------------------------------------------
1.15.goto
语法:
goto labelA;
…
labelA:
goto语句可以完成从当前位置到指定标志位的跳转。
使用goto语句要考虑有害性,所以它不经常使用。
例如,goto可以用来跳出多重嵌套 for 循环,它比额外的逻辑性跳出更具有时效性。
--------------------------------------------------------------------------------
1.16.if
语法:
if( conditionA ) {
statement-listA;
}
else if( conditionB ) {
statement-listB;
}
…
else {
statement-listN;
}
if 构造一个允许不同的代码在不同的条件下执行的分支机制。
conditions 是判断语句,假如条件为假, else语句块将被执行,所有的else是可选的.
--------------------------------------------------------------------------------
1.17.int
关键字int 用来声明整型变量。
--------------------------------------------------------------------------------
1.18.long
关键字long用来声明一个长整型变量。
--------------------------------------------------------------------------------
1.19.register
关键字register 请求编译器优化它定义的变量,并且通常这种优化比人工优化的好。
--------------------------------------------------------------------------------
1.20.return
语法:
return;
return( value );
return 语句可以从当前函数跳转到调用该函数的任何地方。
返回值是任意的。一个函数可以有不止一个返回语句。
--------------------------------------------------------------------------------
1.21.short
关键字short用来声明短整型变量。
--------------------------------------------------------------------------------
1.22.signed
关键字signed用来声明符号字符型型变量。
--------------------------------------------------------------------------------
1.23.sizeof
sizeof 操作用来用计算括号里表达式的占用字节数。
--------------------------------------------------------------------------------
1.24.static
static 数据类型用来给变量创建永久存储空间,静态变量在函数间调用时保持他们的值不变;当用在一个类中时,所有类对象共享一个静态成员。
--------------------------------------------------------------------------------
1.25.struct 结构体
语法:
struct struct-name : inheritance-list {
public-members-list;
protected:
protected-members-list;
private:
private-members-list;
} object-list;
structs 类似于 class, struct中的成员更像是类中的公共成员,在C中,structs 仅能包含数据并不允许有继承表。
例如:
struct Date {
int Day;
int Month;
int Year;
}
--------------------------------------------------------------------------------
1.26.switch
语法:
switch( expression ) {
case A:
statement list;
break;
case B:
statement list;
break;
…
case N:
statement list;
break;
default:
statement list;
break;
}
switch语句允许你通过一个表达式判断许多数值,它一般用来在多重循环中代替if()…else if()…else if()… 语句。
break 语句必须在每个case 语句之后,default case 是可选的,假如所有的case都不能匹配的话,他将和defult case匹配。
例如:
char keystroke = getch();
switch( keystroke ) {
case ‘a’:
case ‘b’:
case ‘c’:
case ‘d’:
KeyABCDPressed();
break;
case ‘e’:
KeyEPressed();
break;
default:
UnknownKeyPressed();
break;
}
--------------------------------------------------------------------------------
1.27.typedef
语法:
typedef existing-type new-type;
关键字typedef 用来给现有的数据类型创建新的名字。
--------------------------------------------------------------------------------
1.28.union共用体
语法:
union union-name {
public-members-list;
private:
private-members-list;
} object-list;
union 类似于 class,除了所有的成员分享同一内存外它的缺省值更像公共类型。
例如:
union Data {
int i;
char c;
};
--------------------------------------------------------------------------------
1.29.unsigned
关键字unsigned 用来声明无符整型变量。
--------------------------------------------------------------------------------
1.30.volatile
关键字volatile在描述变量时使用,阻止编译器优化那些以volatile修饰的变量,volatile被用在一些变量能被意外方式改变的地方。
例如:抛出中断,这些变量若无volatile可能会和编译器执行的优化相冲突。
--------------------------------------------------------------------------------
1.31.void
关键字void用来表示一个函数不返回任何值,或者普通变量能指向任何类型的数据,void 也能用来声明一个空参数表。
--------------------------------------------------------------------------------
1.32.while
语法:
while( condition ) {
statement-list;
}
关键字 while 用于一个只要条件未真就执行statement-list的循环体,注意假如起始条件为false,statement-list 将不被执行(你可以用一个do循环来保证statement-list至少被执行一次)。
例如:
bool done = false;
while( !done ) {
ProcessData();
if( StopLooping() ) {
done = true;
}
}
2.标识符
在C语言中为了在程序运行的时候可以使用变量、常量、数组、函数、结构体等,就要为它们取一个名字,这些名字就是标识符。
标识符命名规则:
1、所有的标识符需由字母或下划线开头,而不能使用数字或者符号作为开头。
2、在设定标识符时,除了开头以外,其它位置可以是字母、下划线或数字组成。
3、C语言区分大小写字母。
4、标识符不能是关键字。
5、标识符的命名最好有一定的意义。
6、ANSI标准规定,标识符可以是任意长度。
以上就是本次的分享了,希望对大家有所帮助,欢迎关注博主一起学习更多的新知识!