什么是字符集?
与其他所有语言一样,“ C”也有自己的字符集( Character set )。 程序是一组指令,执行后会生成输出。 程序处理的数据由各种字符和符号组成。 生成的输出也是字符和符号的组合。
在“ C”中设置的字符分为
- 字母
- 数字
- 特殊字符
- 空格(空格)
编译器始终会忽略字符的使用,但是它广泛用于格式化数据。 以下是“ C”编程中的字符集:
1.字母
-
- 大写字母(A-Z)
- 小写字母(a-z)
2. 数字
从0到9的所有数字
3. 空格
-
- 空格
- 新行
- 回车
- 水平Tab
4. 特殊字符 (用英文注解,中文大家应该都认识。例如中括号,大括号等。
, (comma) | { (opening curly bracket) |
. (period) | } (closing curly bracket) |
; (semi-colon) | [ (left bracket) |
: (colon) | ] (right bracket) |
? (question mark) | ( (opening left parenthesis) |
‘ (apostrophe) | ) (closing right parenthesis) |
” (double quotation mark) | & (ampersand) |
! (exclamation mark) | ^ (caret) |
|(vertical bar) | + (addition) |
/ (forward slash) | – (subtraction) |
\ (backward slash) | * (multiplication) |
~ (tilde) | / (division) |
_ (underscore) | > (greater than or closing angle bracket) |
$ (dollar sign) | < (less than or opening angle bracket) |
% (percentage sign) | # (hash sign) |
什么是 C 令牌(Token)?
C 程序由各种令牌组成,令牌可以是关键字、标识符、常量、字符串值,或者是一个符号。
Token 是程序中对编译器有意义的最小元素。编译器将程序分解为最小的单元(令牌),然后进入编译的各个阶段。
Token 可分类如下:
- 关键词 (Keywords )
- 标识符 (Identifiers)
- 常量 (Constants)
- 字符串 (Strings)
- 特殊符号 (Special Symbols)
- 操作符 (Operators)
什么是关键词和标识符 ?
什么是关键词 ?
关键词是编程语言中预先定义的或保留的词。每个关键字都意味着在程序中执行特定的功能。由于关键字是编译器的引用名,因此不能用作变量名,因为这样做,我们试图为关键字赋予一个不允许的新含义。不能重新定义关键字。但是,通过使用 C/C++ 预处理器指令,可以在编译前指定要替换关键字的文本。 C 语言支持的 32 种关键字如下:
auto | double | int | struct |
break | else | long | switch |
case | enum | register | typedef |
char | extern | return | union |
const | short | float | unsigned |
continue | for | signed | void |
default | goto | sizeof | volatile |
do | if | static | while |
C++ 拥有另外 31 个额外的关键字:
什么是标识符?
标识符用作变量、函数和数组命名的通用术语。这些是用户定义的名称,由任意长的字母和数字序列组成,以字母或下划线作为第一个字符。标识符名称的拼写和大小写必须与任何关键字不同。不能将关键字用作标识符;它们是为特殊用途保留的。一旦声明,就可以在以后的程序语句中使用标识符来引用关联的值。
命名 c 标识符时应遵循某些规则:
- 它们必须以字母或下划线开头。
- 它们只能由字母、数字或下划线组成。不允许使用其他特殊字符。
- 它不应该是关键字。
- 它不能包含空格且命名有意义。
- 只有前31个字符是有效的,它应该最多31个字符。
什么是常量 ?
常量也类似于一般的变量。但是,唯一的区别是,一旦定义了它们的值,程序就不能修改它们。常数是指固定值。它们也被称为 literals。 常量可以是任何数据类型。
常量的类型示例:
- 整数常量 – 例如 0,1,1218,12482
- 实数或浮点数常量 – 例如:0.0, 1203.03, 30486.184
- 八进制或16进制常量 – 例如:八进制 (013)8 = (11)10, 十六进制:(013)16 = (19)10
- 字符常量 – 例如:‘a’, ‘A’, ‘z’
- 字符串常量 – 例如:”zhihuixinpian“
什么是字符串?
字符串只是以空字符(’\0’)结尾的字符数组。此空字符表示字符串的结尾。字符串总是用双引号括起来。然而,字符在 C 和 C++ 中用单引号括起来。
字符串的声明:
- char string[20] = {‘g’, ’e’, ‘e’, ‘k’, ‘s’, ‘f’, ‘o’, ‘r’, ‘g’, ’e’, ‘e’, ‘k’, ‘s’, ‘\0’};
- char string[20] = “geeksforgeeks”;
- char string [] = “geeksforgeeks”;
上面不同声明方法之间的不同:
- 当我们声明为 “string[20]”,就会分配 20 字节的内存空间用于存储这个字符串值
- 当我们声明为 ”string[]“,在程序执行期间将根据需要分配内存空间。
什么是特殊符号?
下面的特殊符号在 C 中使用,有一些特殊的含义,因此不能用于其他目的。
- 方括号[]:左括号和右括号用作数组元素引用。这些表示单下标和多维下标。
- 括号():这些特殊符号用于指示函数调用和函数参数。
- 大括号{}:这些开始和结束大括号标记包含多个可执行语句的代码块的开始和结束。
- 逗号(,):用于分隔多个语句,如用于分隔函数调用中的参数。
- 分号:它是一个操作符,本质上调用了一个叫做初始化列表的东西。
- 星号(*):用于创建指针变量。
- 赋值运算符(=):用于赋值。
- 预处理器(#):预处理器是一个宏处理器,编译器在实际编译之前自动使用它来转换程序。