1. 什么是标识符
标识符就是在程序中自定义的一些符号的名称, 给要用的函数,数据起名字,方便区分调用.
2. 由26个英文字母的大小写,10个阿拉伯数字0-9,下划线_组成.
3. 有什么特点?
不能用数字开头,严格区分大小写,不能与关键字同名,取名要有意义.便于识别. //驼峰命名规则需记住
4. 静态数据和动态数据的区别.
静态数据是数据被保持之后,只要设备没有坏,在断电的情况下数据都是存在的.
动态数据:数据加载到内存中,一旦断电,数据就不存在了.
5.什么是常量
是一些固定的数据
分为四大类型: 整数,字符型, 浮点型,字符串型
6 什么是变量
变量来源与数学,是计算机语言中能存储计算结构或能表示抽象概念
7.有什么用
用来表示一个不需要经常改变或者不确定的数据.
8.变量的作用域在对应的代码块中(作用域可以理解为距离变量最近的两个成对的花括号)
For example :
#include <stdio.h>
int add() {
int num; // num的作用域范围在函数结束的花括号中
return 0;
}
int main ( ) {
int num; // 这个num的作用域在main函数中
num=2;
int a=100;
return 0;
}
7. 全局变量是什么
在所有函数外部定义的变量,称为全局变量.
8. 有什么特点
a. 生命周期跟随程序,程序启动创建,程序退出才会销毁.
b.作用域是其所在位置之下所有函数,都可以共享并改变
c. 变量的使用遵循就近原则
d. 如果没有初始化,默认值是0;
9. 结构体是什么
它是一种数据类型,是构造类型,里面可以存储不同数据类型的数据 // 常用数据类型
10.有什么用
可以封装不同数据类型到一个结构中,方便使用
typedf struct Person {
char *name;
int age;
int height;
}per;
11. 什么是结构体数组
它是数组,只不过数组里每一个元素是结构体类型,可以存储多个有关联的结构体.
12. 定义及初始化赋值:struct 结构体类型 数组名[长度]={结构体1,结构体2};
struct Person ={char *name ; int age ;};
int main(){
struct Person{
char *name;
int age;
};
struct Person per= {"itheima",2};
struct Person per1={"itcast",3};
struct Person arr[2]={"per,per1"};
printf("%s---%d\n",arr[1].name,arr[1].age);
return 0;
}
13. 什么是结构体指针
它是指针,不是指针类型而是结构体指针类型.
14.怎么用?
定义初始化赋值: struct 结构体类型 * 指针名=&结构体变量
For example: struct Person {char *name; int age;}; struct Person *p=&per;
取值 :(*指针名).结构体元素名; 指针名->结构体元素名;
赋值:(*指针名). 结构体元素名=新值; 指针名->结构体元素名=新值
For example: (*p).name, (*p).age; 或 p->age, p->name;
结构体分配内存空间遵循两个原则,对齐原则和对齐算法(增加CPU寻址效率)
15. 枚举是什么
是一种数据类型,称为枚举类型,是构造类型的一种,里面存的都是有别名的整型常量.
16.有什么用
可以把多个整型常量以别名的形式封装成一个整体,便于别的变量识别并取值使用.
int
main(){
enum
day{
MORNING,
// 0
AFTERNOON,//
1
NIGHT,
// 2
};
enumDay
daystatus=MORNING;
//
取值:变量名=枚举元素名
daystatus=MORNING;
printf("daystatus=%d\n",daystatus);
daystatus=AFTERNOON;
printf("daystatus=%d\n",daystatus);
daystatus=NIGHT;
//
用普通变量//
int
status=0;//
表示早上
int
status=1;//
表示中午
int
status=2;//
表示晚上
printf("daystatus=%d\n",daystatus);
int
a; // 0表示关 1表示开,没有其他的取值
a=1;
a=0;
enumStatus{
CLOSE,
OPEN,
}nowStatus=open;
nowStatus=OPEN;
nowStatus=CLOSE;
printf("a=%d--nowStatus=%d\n",a,nowStatus);
} |
|