二进制(0B)转八进制(0O)和十六进制(0X)
一个八进制数可以由三位二进制数表示,一个十六进制数可以有四位二进制数表示。
例如:
结构声明也称作定义结构体,作用是描述结构如何组合,下面是结构体的常见定义方法。
struct Student{ // 声明 Student 结构体 char name[20]; // 姓名 int num; // 学号 float score; // 成绩 }; struct Student stu1; //定义结构体变量stu1
其中,Student 是结构体名,stu1 是 Student 结构体变量名 stu1。在完成了结构体声明和结构体变量的定义(且初始化)后即可赋值或者调用结构体中的数据了,下面是结构体内数据的常见使用方法。
stu1.name = 'hjh'; stu1.num = 20920; stu1.score = 99.99; if(stu1.score >= 60){printf("及格!");}else{printf("不及格!");}
还有一种结构体的重要使用方法是typedef
typedef struct{ // 相当于定义了一种独特的数据结构 StructList //数据列表例如 name, age 等 }Student; // 该数据结构的名字叫 Student Student stu1; // 定义了一个 Student 类型的结构体变量位 *** 作
''' 与运算: 或运算 异或运算 取反运算 左移运算,右移同理 1 0 0 1 1 1 0 0 1 1 1 0 0 1 1 1 0 0 1 1 & 1 1 0 0 1 |1 0 0 0 1 ^ 1 1 0 0 1 ~ 1 0 0 1 1 << 3(位) ------------- ------------- ------------- ------------- ------------- 1 0 0 0 1 1 0 0 1 1 0 1 0 1 0 0 1 1 0 0 1 1 0 0 0 '''关键字
static关键字
static 关键字不仅可以用来修饰变量,还可以用来修饰函数。在使用 static 关键字修饰变量时,我们称此变量为静态变量。全局变量属于静态存储方式,但并不是静态变量。全局变量的作用域是整个源程序,当一个源程序由多个源文件组成时,全局变量在各个源文件中都是有效的。如果我们希望全局变量仅限于在本源文件中使用,在其他源文件中不能引用,也就是说限制其作用域只在定义该变量的源文件内有效,而在同一源程序的其他源文件中不能使用。这时,就可以通过在全局变量之前加上关键字 static 来实现,使全局变量被定义成为一个静态全局变量。这样就可以避免在其他源文件中引起的错误。也就起到了对其他源文件进行隐藏与隔离错误的作用,有利于模块化程序设计。
extern关键字
如果在所有函数之外定义的变量没有指定其存储类别,那么它就是一个外部变量,它的作用域是从它的定义点到本文件的末尾(在单个源文件中的确是这样,如果有多个源文件,全局变量的作用范围不是从变量定义处到该文件结尾,而是在其他文件中也有效),但是如果要在定义点之前或者其他文件中使用它,那么就需要使用关键字extern对其进行声明
const关键字
有时候我们希望定义这样一种变量,它的值不能被改变,在整个作用域中都保持固定。例如,用一个变量来表示班级的最大人数,或者表示缓冲区的大小。为了满足这一要求,可以使用const关键字对变量加以限定。由于常量一旦被创建后其值就不能再改变,所以常量必须在定义的同时赋值(初始化),后面的任何赋值行为都将引发错误。一如既往,初始化常量可以使用任意形式的表达式
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)