1.static作用实例
#include<stdio.h>
void test()
{
//int a = 1; //每次循环都重新定义a为1
static int a = 1; //加了static后,不在重新定义a为1
a++;
printf("%d\n", a);
}
int main()
{
int i = 0;
while ( i < 10)
{
i++;
test();
}
return 0;
}
2.define 定义宏
#include<stdio.h>
#define add(x,y) (x)+(y) //add=x+y
int main()
{
//printf("%d\n", add(1, 6)); //add=1+6=7
printf("%d\n", 3*add(1, 6)); //add=3*1+6
return 0;
}
3.地址如何储存,需要定义指针变量
#include<stdio.h>
int main()
{
int a = 10; //a在内存中要分配空间-4个字节
printf("%p\n", &a); //%p专门用来打印地址
int* pa = &a; //pa用来存放地址,在C语言中pa叫指针变量
//*说明pa是指针变量
//int说明pa执行的变量是int类型的
}
4.初识结构体
#include<stdio.h>
struct stu
{
char name[20];
int age;
double score;
};
int main()
{
//第一种方法
struct stu s = { "张三", 20, 92.5 }; //结构体的创建和初始化
printf("1:%s %d %lf\n", s.name, s.age, s.score);
//第二种指针方法
struct stu* ps = &s;
printf("2:%s %d %lf\n", (*ps).name, (*ps).age, (*ps).score);
return 0;
}