1.数学计算用到的库文件<cmath>
幂用函数:pow(要取几次方的值,几次方数);
2.不小心把visual studio光标改了
解决方法:(键盘)fn+insert
3.宏相关
a)宏的优点:简单明了易维护,不用调用参数效率高
b) 宏定义的使用:(1)不带参数的宏
(2)带参数的宏
例:#define SQUARE(x) x*x
#define MIN(x,y) x<y?x:y
c) 宏展开的方式:直接替换,不会进行额外的处理,所以如果要传表达式,记得加上括号
4.结构体相关
A.结构体基础
1)为什么使用结构体
表示复杂的信息
2)结构体定义时 } 后面要有分号
结构体定义时,各属性之间用 ; 分割
3)结构体初始化方法
定义时初始化所有属性struct student a = {"Amy",16};
指定初始化的属性 struct student a = {.name = "Amy",.age = 16}//linux系统支持,vs不支持
单独初始化每一个属性struct student a; strcpy(a.name,"Amy");//定义名字属性时使用c语言字符串,所以这里用strcpy
a.age = 40;
4)结构体可以包含结构体
B.
1)同类型结构体之间可以相互赋值,相当于拷贝
2)结构体的数组(数组成员是结构体的数组)
例:
struct student{
char name[8];
int age;
};
struct student s[2]; //结构体的数组
通过数组下标引用结构体元素
3)结构体指针
将结构体变量地址赋给结构体指针,
指针访问结构体变量成员,两种方式
1.直接解引
例:(*指针).name
2.直接使用指针访问
例:指针->name
4)结构体的值传递
结构体变量作为参数传值,是值传递(即形参无法更改作为实参的结构体)
解决方法: (1)形参使用结构体指针
(2)(如果形参用引用的话,使用 . 来调用属性)
(3)函数返回结构体,由调用函数的结构体接收
(4)返回引用,调用函数的结构体接收
(5)返回指针