今天复习了C语言的一些基础,特别是之前没太接触的部分,解决了很多疑问。为数据结构的学习打好基础0.0
2.C存储类
auto 是局部变量的默认存储类, 限定变量只能在函数内部使用;
register 代表了寄存器变量,不在内存中使用;
static是全局变量的默认存储类,表示变量在程序生命周期内可见;
extern 表示全局变量,即对程序内所有文件可见,类似于Java中的public关键字;
3.运算符包括:
- 算术运算符(+, -, ++, --, %……)
- 关系运算符(==, !=, >, <……)
- 逻辑运算符(&&, ||, !)
- 位运算符(& | ^)
- 赋值运算符(=, +=, *=, |=……)
- 杂项运算符(sizeof , ? :)
3.1 杂项运算符 ↦ sizeof & 三元
下表列出了 C 语言支持的其他一些重要的运算符,包括 sizeof 和 ? :。
运算符 | 描述 | 实例 |
---|---|---|
sizeof() | 返回变量的大小。 | sizeof(a) 将返回 4,其中 a 是整数。 |
& | 返回变量的地址。 | &a; 将给出变量的实际地址。 |
* | 指向一个变量。 | *a; 将指向一个变量。 |
? : | 条件表达式 | 如果条件为真 ? 则值为 X : 否则值为 Y |
两个有意思的题目:
(1)利用异或 ^ 来交换两个数的值,而且不引入其他变量。
(2)利用位与 & 运算,判断一个整数是否是2的整数次幂。