C语言基础(2)

C语言基础(2)

4.3变量、常量、标识符

  • 变量:可写(赋值)可读(获取,可取值);常量:只可读,不可写。

  • 定义:为变量分配一块内存并给它取上一个名字。变量名一旦和这块内存匹配起来,他们就同生共死,且这块内存的位置也不能被改变。一个变量在一定的区域内(eg.函数内,全局等)只能被定义一次。

  • 声明:有两重含义。1)告诉编译器,这个名字已经匹配到一块内存上了。2)告诉编译器,这个名字我先预定了,别的地方再也不能用它来作为变量名。

定义&声明的区别:定义创建了对象并为这个对象分配一块内存;声明没有分配内存空间。

4.3.1变量

变量类型:全局变量(在函数外定义)、局部变量(在函数中定义)、块变量(在{}内定义)

4.3.2常量

C语言中常量分为以下几种:

​ 1.字面常量

​ 2.用#define定义的宏常量

​ 3.用const关键字修饰的变量,称为常变量

​ 4.枚举常量(enum)

​ 5.字符常量和字符串常量(单引号是字符的定界符;双引号是字符串的定界符)

4.3.3标识符

标识符是用户编程时使用的名字,用于给变量、常量、函数、语句块等命名,以建立起名称与使用之间的关系。

  • 命名规则:

  • 标识符由字母(大小写),数字以及下划线组成,且第一个字符必须是字母或者下划线

  • C语言中大写字母和小写字母是不一样的

  • 标识符不能和已有的关键字相同

转义字符
  • 转义字符以“\”开头,后跟一个或几个字符

  • 使用转义字符时需注意:

​ 1)转义字符只能使用小写字母,否则转义字符被忽略;如‘\N’->‘N’。

​ 2)\v 垂直制表和\f换页符对屏幕没有任何影响,只会影响打印机执行响应操作。

​ 3)\t光标向前移动四格或八格(编译器里设置)

​ 4)'字符里(即单引号里)使用字符串里(即双引号里)需要只要用’即可

​ 5)?其实就是?(没有转义字符也一样,在vs2012测试通过)

  • 总结:

转义字符既可以用于单个字符,也可以用于字符串,并且一个字符串中可以同时使用八进制形式和十六进制形式。

转义字符的初衷是用于ASCII编码,所以它的取值范围有限:

​ 1)八进制形式的转义字符最多后跟三个数字,即\ddd最大取值是\177

​ 2)十六进制形式的转义字符最多后跟两个数字,即\xdd最大取值是\x7f

单引号、双引号、反斜杠是特殊的字符,不能直接表示:

​ 1)单引号是字符类型的开头和结尾,要使用 \ ’ 表示

​ 2)双引号是字符串的开头和结尾,要使用 \ ‘’ 表示

​ 3)反斜杠是转义字符的开头,要使用 \ \ 表示

4.4关键字

C语言的关键字共有32个,根据关键字的作用,可分为数据类型关键字,控制语句关键字。

4.4.1数据类型关键字

​void char short int long float double signed unsigned truct union enum typedef sizeof auto static register extern const volatile

4.4.2流程控制关键字

​if else switch case default for do while return continue break goto

4.4.3C99新增(5个)

inline 用来定义一个类的内联函数,引入它的主要原因是用它代替C中表达式形式的宏定义。C语言是一个效率很高的语言,这种宏定义在形式及使用上像一个函数,但它使用预处理器实现,没有了参数压栈,代码生成等一系列的操作。

restrict 只用于限定指针,该关键字用于告知编译器,所有修改该指针指向内容的操作全部都是基于该指针的,即不存在其他进行修改操作的途径;这样的后果是帮助编译器进行更好的代码优化,生成更有效率的汇编代码。

​**_Bool** 用于表示布尔值。

​**_Complex和 _Imaginary** <complex.h>头文件中定义了complex和imaginary宏,并将它们扩展为_Complex和 _Imaginary,因此在编写新的应用程序时,应使用<stdbool.h>头文件中的complex和imaginary宏。

4.4.4 sizeof

​计算类型的大小或变量的大小,也就是字节个数。

4.4.5 typedef

​是在计算机编程语言中用来为复杂的声明定义简单的别名。

​它本身是一种存储类的关键字,与auto、extern、mutable、static、register等关键字不能同时出现在同一个表达式中。

4.4.6 extern

​用在全局变量或函数的声明前,用来说明"此变量/函数是在别处定义的,要在此处引用"。

4.4.7 static

C语言中用来修饰变量和函数。

4.4.8 const

​是定义只读变量的关键字,或者说是定义常变量的关键字。可以修饰变量、数组、指针等。(可读,不可写

无论是全局变量还是局部变量都必须初始化赋值。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值