栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

C语言学习笔记——P4

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

C语言学习笔记——P4

目录

前言:

 ●由于作者水平有限,文章难免存在谬误之处,敬请读者斧正,俚语成篇,恳望指教!

关键字static

 对比代码1和代码2的效果理解static修饰局部变量的意义:

 指针

 那地址如何存储,需要定义指针变量

 & 取地址操作符 %p - 是以地址的形式打印

总结:

通过本小节的学习,既有上机操作编程,也有理论学习研究,可谓:”趣味有加“!


前言:

 ●由于作者水平有限,文章难免存在谬误之处,敬请读者斧正,俚语成篇,恳望指教!

关键字static

在C语言中: static是用来修饰变量和函数的

1. 修饰局部变量-称为静态局部变量

2. 修饰全局变量-称为静态全局变量

3. 修饰函数-称为静态函数

1.

 static修饰局部变量-称为静态局部变量

1.初始局部变量——代码1

#include

//void 在这里表示不需要函数返回任何值
void test()
{
	int a = 1;
	a++;
	printf("%d ", a);  //此处输出10个2,因为a是局部变量,创建并使用后即销毁,下次使用重新创建
}                      //生命周期结束
int main()
{
	int i = 0;
	while (i < 10)
	{
		test();
		i++;
	}
	return 0;
}

 

  2.使用static 修饰局部变量——代码2

#include

//void 在这里表示不需要函数返回任何值
void test()
{
	static int a = 1;
	a++;
	printf("%d ", a);  //此处输出10个2,因为a是局部变量,创建并使用后即销毁,下次使用重新创建
}
int main()
{
	int i = 0;
	while (i < 10)
	{
		test();
		i++;
	}
	return 0;
}

 

 对比代码1和代码2的效果理解static修饰局部变量的意义:

 

 

结论:

static修饰局部变量改变了变量的生命周期 让静态局部变量出了作用域依然存在,到程序结束,生命周期才结束。

2.

 static修饰全局变量-称为静态全局变量

 

 

3.

3. 修饰函数-称为静态函数

 

 

 #define 定义常量和宏

//#define 定义标识符常量

#define M 100
#define STR "hehe"
#include
int main()
{
	printf("%dn", M);
	printf("%sn", STR);

	return 0;
}

#define 定义宏

#define ADD(X,Y) ((X)+(Y))
#include
int main()
{
	int a = 10;
	int b = 20;

	int ret = ADD(a, b);
	
	printf("%dn", ret);

	return 0;
}

 指针

1 内存 内存是电脑上特别重要的存储器,计算机中程序的运行都是在内存中进行的 。 所以为了有效的使用内存,就把内存划分成一个个小的内存单元,每个内存单元的大小是1个字节。

为了能够有效的访问到内存的每个单元,就给内存单元进行了编号,这些编号被称为该内存单元的地址。

变量是创建内存中的(在内存中分配空间的),每个内存单元都有地址,所以变量也是有地址的。

#include 
int main()
{
	int num = 10;
	     //#//取出num的地址
	     //注:这里num的4个字节,每个字节都有地址,取出的是第一个字节的地址(较小的地址)
	printf("%pn", &num);//打印地址,%p是以地址的形式打印
	return 0;
}

 那地址如何存储,需要定义指针变量
#include
int main()
{
	//& 取地址操作符
	//%p - 是以地址的形式打印

	int a = 10;//a要在内存中开辟空间的
	printf("%pn",  &a);
	
	int * p = &a;//p就是指针变量

	*p = 20;//* --> 解引用操作符号

	printf("%dn", a);//20

	//char ch = 'w';
	//char * pc = &ch;

	return 0;
}

 & 取地址操作符
 %p - 是以地址的形式打印

总结:

通过本小节的学习,既有上机操作编程,也有理论学习研究,可谓:”趣味有加“!

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/352395.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号